Получить значение других ячеек DataGrid WPF - PullRequest
0 голосов
/ 08 марта 2011

Привет! Мне удалось создать сетку данных с флажком, но я понятия не имею, как получить состояние флажка, который отмечен или не отмечен. Мне рекомендовано использовать INotifyPropertyChanged.обработчика событий CellEditEnding. Пожалуйста, помогите мне, я не знаю, как я могу реализовать любой из них.

, что я хочу, это проверить значение флажка, который отмечен / не отмечен щелчком пользователяи может получить индекс строки, а также значение в первой ячейке этой строки.

Пока мой код

namespace embeddatagridcheckbox
{
    /// <summary>
    /// Interaction logic for MainWindow.xaml
    /// </summary>
    public partial class MainWindow : Window
    {
        List<checkedBoxIte> item = new List<checkedBoxIte>();
        public MainWindow()
        {
            InitializeComponent();
            for (int i = 0; i < 5; i++)
            {
                checkedBoxIte ite = new checkedBoxIte();
                ite.MyString = i.ToString();
                ite.MyBool = false;
                item.Add(ite);
            }
            dataGrid1.ItemsSource = item;
        }
    }

    public class checkedBoxIte
    {
        public string MyString { get; set; }
        public bool MyBool { get; set; }
    }
}

XML равен

<DataGrid AutoGenerateColumns="False" Height="323" HorizontalAlignment="Left" Name="dataGrid1" VerticalAlignment="Top" Width="503" BeginningEdit="dataGrid1_BeginningEdit">
            <DataGrid.Columns>
                <DataGridTextColumn Header="MyString" Binding="{Binding MyString}" />
                <DataGridCheckBoxColumn Header="MyBool" Binding="{Binding MyBool}" />
            </DataGrid.Columns>
        </DataGrid>

1 Ответ

2 голосов
/ 08 марта 2011

Откуда вы хотите сослаться на значение CheckBox?Обычно я работаю с объектом ItemSrid ItemSrid напрямую, а не с вычислением строк / столбцов, но это зависит от того, что вы пытаетесь сделать.

В вашем примере вы найдете состояние флажков в вашемсписок с именем list в Code Behind, поскольку именно с этим связана ваша таблица данных.

list[0] = данные первой строки

list[0].MyBool = значение флажка первой строки

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...