このトピックでは、 xamDataPresenter™ コントロールの CellBindings コレクション プロパティを使用して、セルの設定をデータ項目プロパティにバインドする方法を説明します。
このトピックをより理解するために、以下のトピックを参照することをお勧めします。
CellBindings
コレクション プロパティを使用すると、関連付けられたデータ項目から公開されたプロパティへのセル設定のバインドが容易になります。
データ項目プロパティにバインドする、すべてのフィールドのセル プロパティの CellBinding
インスタンスを作成し、CellBindings
コレクションに追加します。
注:
以下の表は、任意の構成とそれを管理するプロパティ設定のマップを示します。
以下のスクリーンショットは、以下の CellBinding
の設定の結果、フィールドのセルの外観がどのようになるかを示しています。
以下のコードはこの例を実装します。
C# の場合:
public class Car : INotifyPropertyChanged
{
private string _make;
public string Make
{
get { return _make; }
set
{
if (_make != value)
{
_make = value;
NotifyPropertyChanged("Make");
}
}
}
private Brush _color;
public Brush Color
{
get { return _color; }
set
{
if (_color != value)
{
_color = value;
NotifyPropertyChanged("Color");
}
}
}
#region INotifyPropertyChanged Members
public event PropertyChangedEventHandler PropertyChanged;
private void NotifyPropertyChanged(String info)
{
if (PropertyChanged != null)
{
PropertyChanged(this, new PropertyChangedEventArgs(info));
}
}
#endregion
}
XAML の場合:
<igDP:XamDataGrid x:Name="XamDataGrid1"
DataSource="{Binding Path=Cars}">
<igDP:XamDataGrid.FieldLayoutSettings>
<igDP:FieldLayoutSettings AutoGenerateFields="False" />
</igDP:XamDataGrid.FieldLayoutSettings>
<igDP:XamDataGrid.FieldLayouts>
<igDP:FieldLayout>
<igDP:FieldLayout.Fields>
<igDP:TextField Name="Make">
<igDP:TextField.CellBindings>
<igDP:CellBinding Property="Foreground"
Target="CellValuePresenter"
Binding="{Binding Path=DataItem.Color}" />
</igDP:TextField.CellBindings>
</igDP:TextField>
</igDP:FieldLayout.Fields>
</igDP:FieldLayout>
</igDP:XamDataGrid.FieldLayouts>
</igDP:XamDataGrid>
このトピックの追加情報については、以下のトピックも合わせてご参照ください。