[Xuni:FlexGrid] 1行に内容を編集可能なセルと不可能なセルを混在させる方法 (Xamarin.Forms)
対象製品
Xuni
詳細
FlexGridで表示する各セルは、内容を編集することができます。
対象のセルをダブルタップすると編集モードになり、キー入力で内容の編集が可能になります。
また、セルの編集モードから抜けることでセルの内容が確定します。
標準ではセル内容は読み取り専用で表示されますが、列ごとにIsReadOnlyプロパティを制御できます。
IsReadOnlyプロパティをfalseに設定した列では、セルの内容を編集することが可能になります。
ただし、FlexGridに設定されたIsReadOnlyプロパティが優先されますので、FlexGridが読み取り専用の場合は列ごとに設定した状態は無効です。
サンプルコード
C#(Xamarin.Forms)
Xuni > 技術情報 > ドキュメント > FlexGrid-機能-編集
対象のセルをダブルタップすると編集モードになり、キー入力で内容の編集が可能になります。
また、セルの編集モードから抜けることでセルの内容が確定します。
標準ではセル内容は読み取り専用で表示されますが、列ごとにIsReadOnlyプロパティを制御できます。
IsReadOnlyプロパティをfalseに設定した列では、セルの内容を編集することが可能になります。
ただし、FlexGridに設定されたIsReadOnlyプロパティが優先されますので、FlexGridが読み取り専用の場合は列ごとに設定した状態は無効です。
サンプルコード
C#(Xamarin.Forms)
public partial class Xuni_QuickStartPage : ContentPage { public Xuni_QuickStartPage() { InitializeComponent(); grid.ItemsSource = Customer.GetCustomerList(20); Title = "列ごとにIsReadOnlyプロパティを設定"; // FlexGrid全体を編集可能に設定 grid.IsReadOnly = false; for (int i = 0; i < grid.Columns.Count - 1; i++) { // 偶数列は読み取り専用に設定 if (i % 2 == 0) { grid.Columns[i].IsReadOnly = true; } // 列ヘッダーを設定 var strIsReadOnly = grid.Columns[i].IsReadOnly.ToString(); grid.Columns[i].Header = string.Format("{0}列:IsReadOnly={1}", i,strIsReadOnly); } } }
Xuni > 技術情報 > ドキュメント > FlexGrid-機能-編集