DataGrid с флажком события - PullRequest
       6

DataGrid с флажком события

0 голосов
/ 03 апреля 2020

теперь посмотрим, у меня есть этот простой набор данных

enter image description here

вот мой xaml

<DataGrid HorizontalAlignment="Left"
          Height="362"
          Margin="10,55,0,0"
          VerticalAlignment="Top"
          Width="362"
          x:Name="table">
    <DataGrid.Columns>
        <DataGridCheckBoxColumn />
    </DataGrid.Columns>
</DataGrid>

код, который запускает эту информацию

        MySqlCommand cmd = m.getmodel("select * from "+equip+" where stored="+place);
        MySqlDataAdapter dataAdapter = new MySqlDataAdapter(cmd);
        DataTable data = new DataTable(equip);
        dataAdapter.Fill(data);
        table.ItemsSource = data.DefaultView;

Теперь здесь дело в том, что всякий раз, когда я нажимаю этот флажок слева, мне нужно отправить код imei той же строки в код c#, мне нужно сохранить imei проверенных строк, любой идея?

1 Ответ

0 голосов
/ 04 апреля 2020

Когда вы добавляете DataColumn типа bool к DataTable, DataGrid автоматически генерирует DataGridCheckBoxColumn, который связан с DataTable.

private void InitializeDataTable()
{
  MySqlDataAdapter dataAdapter = new MySqlDataAdapter(cmd);

  DataTable data = new DataTable(equip);
  dataAdapter.Fill(data);

  var checkBoxColumn = new DataColumn("Select", typeof(bool));
  data.Columns.Add(checkBoxColumn);
  checkBoxColumn.SetOrdinal(0); // Move column to the beginning

  foreach (DataRow row in data)
  {
    row["Select"] = false;
  }

  table.ItemsSource = data.DefaultView;

  data.ColumnChanged += OnColumnChanged;
}

private void OnColumnChanged(object sender, DataColumnChangeEventArgs e)
{
  var imei = e.Row["imei"];
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...