Я работаю с WPF и набором инструментов MaterialDesignInXAML
Я хочу отключить элемент управления (в данном случае флажок, к которому обращается свойство DataGridCell.Content) в определенном DataGridCell. Однако, даже если цвет флажка становится серым (я думаю, это означает, что элемент управления отключен), я все равно могу изменить его, когда войду в ячейку.
Я попытался отключить сам DataGridCell, и он работает, что означает, что элемент управления флажка в ячейке больше нельзя редактировать. Но я все еще хочу знать, почему я не могу просто снять флажок?
private void ButtonForDisablingCheckbox_Click(object sender, RoutedEventArgs e)
{
// The following line can reach the purpose of disabling the control in the cell
// DataGridForSchema.GetCell(0, 3).IsEnabled = false;
// The following line can not reach that purpose
(DataGridForSchema.GetCell(0, 3).Content as CheckBox).IsEnabled = false;
}
пс: метод GetCell находится в этом посте (первый ответ)
Вот несколько фотографий, которые показывают ситуацию
перед тем, как нажать кнопку для отключения флажка:
![before I click the button for disabling checkbox](https://i.stack.imgur.com/YcFbX.png)
после того, как я нажму кнопку (вы можете заметить, что цвет флажка (в первом ряду) изменился):
![after I click the button(you can notice the checkbox's color(in the first row) is changed](https://i.stack.imgur.com/DN2tr.png)
Я все еще могу поставить галочку в выключенном состоянии:
![I can still check the seemingly disabled checkbox](https://i.stack.imgur.com/ntMCH.png)
Заранее спасибо за помощь!