次のように TextBoxColumn というカスタムクラスがあります
public class TextBoxColumn : DataGridTemplateColumn
{
public static readonly DependencyProperty FieldNameProperty = DependencyProperty.Register("FieldName", typeof(string), typeof(TextBoxColumn), new PropertyMetadata(""));
public string FieldName
{
get { return (string)GetValue(FieldNameProperty); }
set { SetValue(FieldNameProperty, value); }
}
}
XAML から DataGrid 列を作成する場合:
<DataGrid>
<DataGrid.Columns>
<local:TextBoxControl FieldName="FirstName"/>
<local:TextBoxControl FieldName="LastName"/>
</DataGrid.Columns>
</DataGrid>
XAML ディクショナリで、この TextBoxColumn のセル テンプレートを定義しました。
<DataTemplate x:Key="TextBoxColumn_CellTemplate">
<TextBox Text="{Binding FieldName}"/> <!-- Here is the problem, if I give FirstName instead of FieldName, it works fine -->
</DataTemplate>`
TextBoxColumn の FieldName プロパティの値を取得して Text プロパティにバインドする方法は? C#コードなしでどうすれば達成できますか?