Текст на всплывающей подсказке к ячейке в datagrid
Извините меня за мой английский, я из России, проблема моего кода связана с всплывающей подсказкой в таблице Datagrid на ячейке. Код имеет один момент (FallbackValue), но в нем есть два, но, по крайней мере, для меня:
1. Не удается получить цвет, чтобы изменить FallBackValue, а в случае ее изменения после записи остается прикрепленной к цвету FallBackValue
2. Если вы поместите курсор в ячейку для редактирования, FallbackValue исчезнет во всех остальных ячейках.
Помогите решить проблему, конечно, если я пошел правильным путем.
Спасибо.
Мой код:
<pre>public partial class MainWindow : Window { ObservableCollection<Person> person = new ObservableCollection<Person>(); public MainWindow() { DataGridCell cell = new DataGridCell(); InitializeComponent(); if (person == null) person = new ObservableCollection<Person>(); DGR.ItemsSource = person; }
class Person { private string name; private string secondName; public string Name { get { return name; } set { name = value; } } public string SecondName { get { return secondName; } set { secondName = value; } }
<pre><DataGrid x:Name="DGR" AutoGenerateColumns="False"> <DataGrid.Columns> <DataGridTextColumn Header="Name"> <DataGridTextColumn.ElementStyle> <Style TargetType="TextBlock"> <Setter Property="Text" Value="{Binding Name, FallbackValue=Name}"/> </Style> </DataGridTextColumn.ElementStyle> <DataGridTextColumn.EditingElementStyle> <Style TargetType="{x:Type TextBox}"> <Setter Property="Text" Value="{Binding Name, ValidatesOnDataErrors=True, NotifyOnSourceUpdated=True, UpdateSourceTrigger=PropertyChanged}"/> </Style> </DataGridTextColumn.EditingElementStyle> </DataGridTextColumn> <DataGridTextColumn Header="SecondName"> <DataGridTextColumn.ElementStyle> <Style TargetType="TextBlock"> <Setter Property="Text" Value="{Binding SecondName, FallbackValue=SecondName}"/> </Style> </DataGridTextColumn.ElementStyle> <DataGridTextColumn.EditingElementStyle> <Style TargetType="{x:Type TextBox}"> <Setter Property="Text" Value="{Binding SecondName, ValidatesOnDataErrors=True, NotifyOnSourceUpdated=True, UpdateSourceTrigger=PropertyChanged}"/> </Style> </DataGridTextColumn.EditingElementStyle> </DataGridTextColumn> </DataGrid.Columns> </DataGrid>
Что я уже пробовал:
Параметры попробовал, ElementStyle, EditingElementStyle, в textBlock set FallBackValue=, как текст в новой строке появляется, но после редактирования остается цвет, который ссылается на FallBackValue.