[ad_1]
Salut, j’ai un DataGrid. J’ai utilisé TextBox dans ses cellules.
J’ai créé un ControlTemplate pour cela.
Donc, mon problème est que lorsque j’utilise controlTemplate, la liaison de TextBox ne fonctionnera pas. Mais si je règle tout directement dans le DataTemplate, la liaison fonctionne parfaitement.
Une idée s’il vous plaît ?
Ce que j’ai essayé :
La liaison à TextBox fonctionne parfaitement dans ce code :
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 liaison à TextBox ne fonctionne pas dans ce code !!! :
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>
Solution 1
J’ai trouvé la réponse.
Je devrais lier le texte au parent, puis le lier à la classe.
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]
コメント