Отключенный элемент управления в DataGridCell по-прежнему доступен для редактирования - PullRequest
1 голос
/ 06 апреля 2019

Я работаю с 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

после того, как я нажму кнопку (вы можете заметить, что цвет флажка (в первом ряду) изменился): after I click the button(you can notice the checkbox's color(in the first row) is changed

Я все еще могу поставить галочку в выключенном состоянии: I can still check the seemingly disabled checkbox

Заранее спасибо за помощь!

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