private void LoadCodes() { if (!File.Exists("codes.xml")) { LogError(new Exception("Can't find codes.xml")); return; } using (StreamReader sr = new StreamReader("codes.xml", true)) { codesXml = XDocument.Load(sr); codes = new List <Code>(); foreach (var entry in codesXml.Descendants("entry")) { // xml data var name = entry.Attribute("name").Value; var code = entry.Element("code").Value.Trim(); var enabled = Convert.ToBoolean(entry.Element("enabled").Value); codes.Add(new Code { Name = name, CodeBlock = code, Enabled = enabled }); } CodesGrid.ItemsSource = codes; CodesGrid.UpdateLayout(); } }
private void CodesGrid_GotFocus(object sender, RoutedEventArgs e) { if (e.OriginalSource is DataGridCell cell && cell.Column is DataGridCheckBoxColumn) { CodesGrid.BeginEdit(); if (cell.Content is CheckBox chkBox) { chkBox.IsChecked = !chkBox.IsChecked; } } }