[ad_1]
Hola tengo un DataGrid. Usé TextBox en sus celdas.
Hice un ControlTemplate para ello.
Entonces, mi problema es que cuando uso controlTemplate, el enlace de TextBox no funciona. Pero si configuro todo directamente en DataTemplate, el enlace funciona perfecto.
¿Alguna idea por favor?
Lo que he probado:
El enlace a TextBox funciona perfecto en este código:
XML
<DataGridTemplateColumn Header="Text" IsReadOnly="False" Width="38*"> <DataGridTemplateColumn.CellTemplate> <DataTemplate> <TextBox Text="{Binding Path=TheText, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}" Background="Transparent" Foreground="White"/> </DataTemplate> </DataGridTemplateColumn.CellTemplate> </DataGridTemplateColumn>
¡La vinculación a TextBox no funciona en este código! :
XML
<DataGridTemplateColumn Header="Text" IsReadOnly="False" Width="38*"> <DataGridTemplateColumn.CellTemplate> <DataTemplate> <TextBox Text="{Binding Path=TheText, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}" Template="{DynamicResource TextBoxOfCellsInDataGridOfSubtitle}"/> </DataTemplate> </DataGridTemplateColumn.CellTemplate> </DataGridTemplateColumn>
Solución 1
Encontré la respuesta.
Debería vincular el Texto al padre y luego vincularlo a la Clase.
XML
<DataGridTemplateColumn Header="Text" IsReadOnly="False" Width="38*"> <DataGridTemplateColumn.CellTemplate> <DataTemplate> <TextBox Text="{Binding Path=TheText, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}" Template="{DynamicResource TextBoxOfCellsInDataGridOfSubtitle}"/> </DataTemplate> </DataGridTemplateColumn.CellTemplate> </DataGridTemplateColumn>
XML
<ControlTemplate x:Key="TextBoxOfCellsInDataGridOfSubtitle" TargetType="TextBox"> <TextBox Text="{TemplateBinding Text}" AcceptsReturn="False" CaretBrush="White" Foreground="White" Background="Transparent" BorderBrush="Transparent" BorderThickness="0" TextAlignment="Center" HorizontalAlignment="Stretch" HorizontalContentAlignment="Stretch" VerticalAlignment="Stretch" VerticalContentAlignment="Center"/> </ControlTemplate>
[ad_2]
コメント