在摘要行中添加按钮 - RadGrid Telerik Winforms
Adding a Button in Summary Row - RadGrid Telerik Winforms
我的网格顶部有一个汇总行,用于计算 ID 列。我需要在 V 列的摘要行中添加一个按钮。这可能吗?怎么样?
您可以像这样处理 ViewCellFormatting 事件处理程序。我不确定何时才是在摘要单元格内添加新按钮元素的最佳时机,但检查 children 的数字可确保该元素仅在开头添加一次。或者,您也可以只在当前摘要单元格元素中放置一张图片,但推送效果将不可用。
private void RadGridView1_ViewCellFormatting(object sender, CellFormattingEventArgs e)
{
if (e.CellElement.ColumnInfo.Name == "V" && e.CellElement is GridSummaryCellElement)
{
// adding a new button element
if (e.CellElement.Children.Count == 0)
{
var element = new RadButtonElement();
element.Margin = new Padding(12, 0, 12, 0);
element.ImageAlignment = ContentAlignment.MiddleCenter;
element.Alignment = ContentAlignment.MiddleCenter;
e.CellElement.Children.Add(element);
}
// or setting an image to the current element
//e.CellElement.Image = Properties.Resources.FilterImage;
}
else
{
e.CellElement.ResetValue(LightVisualElement.ForeColorProperty, ValueResetFlags.Local);
e.CellElement.ResetValue(LightVisualElement.TextAlignmentProperty, ValueResetFlags.Local);
e.CellElement.ResetValue(LightVisualElement.FontProperty, ValueResetFlags.Local);
}
}
我的网格顶部有一个汇总行,用于计算 ID 列。我需要在 V 列的摘要行中添加一个按钮。这可能吗?怎么样?
您可以像这样处理 ViewCellFormatting 事件处理程序。我不确定何时才是在摘要单元格内添加新按钮元素的最佳时机,但检查 children 的数字可确保该元素仅在开头添加一次。或者,您也可以只在当前摘要单元格元素中放置一张图片,但推送效果将不可用。
private void RadGridView1_ViewCellFormatting(object sender, CellFormattingEventArgs e)
{
if (e.CellElement.ColumnInfo.Name == "V" && e.CellElement is GridSummaryCellElement)
{
// adding a new button element
if (e.CellElement.Children.Count == 0)
{
var element = new RadButtonElement();
element.Margin = new Padding(12, 0, 12, 0);
element.ImageAlignment = ContentAlignment.MiddleCenter;
element.Alignment = ContentAlignment.MiddleCenter;
e.CellElement.Children.Add(element);
}
// or setting an image to the current element
//e.CellElement.Image = Properties.Resources.FilterImage;
}
else
{
e.CellElement.ResetValue(LightVisualElement.ForeColorProperty, ValueResetFlags.Local);
e.CellElement.ResetValue(LightVisualElement.TextAlignmentProperty, ValueResetFlags.Local);
e.CellElement.ResetValue(LightVisualElement.FontProperty, ValueResetFlags.Local);
}
}