alielie
2026-06-15 f08871fe7d148d667f2f11f80f64de71a0d9504c
HMI.UI/DpUtil/DataGridHelper.cs
@@ -16,5 +16,41 @@
        public static readonly DependencyProperty SelectedColumnProperty =
            DependencyProperty.RegisterAttached("SelectedColumn", typeof(DataGridColumn), typeof(Grid),
                new PropertyMetadata(null));
        public static bool GetShowRowNumber(DependencyObject obj)
        {
            return (bool)obj.GetValue(ShowRowNumberProperty);
        }
        public static void SetShowRowNumber(DependencyObject obj, bool value)
        {
            obj.SetValue(ShowRowNumberProperty, value);
        }
        public static readonly DependencyProperty ShowRowNumberProperty =
            DependencyProperty.RegisterAttached("ShowRowNumber", typeof(bool), typeof(DataGrid),
                new PropertyMetadata(false, OnShowRowNumberChanged));
        private static void OnShowRowNumberChanged(DependencyObject d, DependencyPropertyChangedEventArgs e)
        {
            if (d is DataGrid grid)
            {
                if (e.Property == ShowRowNumberProperty)
                {
                    if (((bool)e.NewValue))
                    {
                        grid.LoadingRow += Grid_LoadingRow;
                    }
                    else
                    {
                        grid.LoadingRow -= Grid_LoadingRow;
                    }
                }
            }
        }
        private static void Grid_LoadingRow(object sender, DataGridRowEventArgs e)
        {
            e.Row.Header = e.Row.GetIndex() + 1;
        }
    }
}