У меня есть требование постоянно держать datagridcell в режиме редактирования. Я не могу найти какой-либо вариант для создания режима редактирования ячейки datagrid, поэтому я взял TextBox в ячейке datagrid с помощью шаблона управления.WPF dataGgridCell Режим редактирования
Я могу писать в текстовом поле, но содержимое ячейки datagrid никогда не обновляется. Как я могу обновить содержимое ячеек данных в любом текстовом поле? Вот стиль:
<Style TargetType="{x:Type DataGridCell}" x:Key="DatagridCellWithTextbox">
<Setter Property="BorderThickness" Value="2"></Setter>
<Setter Property="Foreground" Value="{DynamicResource ContentNormalBrush}"/>
<Setter Property="Margin" Value="0"></Setter>
<Setter Property="VerticalContentAlignment" Value="Center"></Setter>
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="{x:Type DataGridCell}">
<Grid Background="{TemplateBinding Background}">
<Border BorderBrush="{TemplateBinding BorderBrush}" BorderThickness="{TemplateBinding BorderThickness}" Background="{TemplateBinding Background}" SnapsToDevicePixels="True">
<TextBox x:Name="txtCell" Text="{Binding RelativeSource={RelativeSource TemplatedParent}, Path=Content.Text}" VerticalContentAlignment="Top" Focusable="True" />
</Border>
</Grid>
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>
Благодаря Ди
Я попытался, но когда я закончил с редактированием, он вернется в режим без редактирования. Я хочу держать его всегда в режиме редактирования. – Dee
Сначала я думал, что он восстановит установщик стиля, возможно, его даже можно было бы сделать с помощью триггера стиля для триггера, всегда верного, но лучше попробуйте мое новое предложение в моем редактировании. – LPL