我有来自Telerik的专有组件RadGridView。这是一个简单的GridView,具有一些扩展功能。关于它没什么好说的,它只是一个控件 我想为它添加分页支持,所以我创建了这个复合控件:
它没什么用,只是一个带有Fill对接属性的RadGridView,上面有一个工具条,带有一个Top对接属性。
这种方法的问题在于它与RadGridView的界面不匹配。我需要用这个替换RadGridView的每一个出现,这可能是非常有问题的。
我需要通过继承RadGridView找到一种方法来做同样的事情。它是一个可继承的控件,它的所有方法都是虚拟的。我不知道怎么做,是如何修改它的外观,使工具条显示停靠在RadGridView正上方。我已经读过我应该修改OnPaint事件,但我很困惑从那里去哪里。 Visual Studio上的设计器在继承RadGridView时不允许我修改其外观。
答案 0 :(得分:0)
这样做的一个简单方法是:
class CustomButton : Button
{
protected override void OnPaint(PaintEventArgs pevent)
{
TextBox tb = new TextBox();
tb.Width = 100;
tb.Height = 20;
tb.Top = this.Top - 20;
tb.Left = this.Left;
this.Parent.Controls.Add(tb);
base.OnPaint(pevent);
}
}
编译完成后,您将在工具箱中看到可用的控件。 当然,你可以玩这些属性,但这是基本的。因此,创建一个代表分页的自定义控件并以这种方式添加它。
解决方案2: 创建一个复合控件(就像你一样)并将RadGridView公开为该控件的属性。
答案 1 :(得分:0)
已经有一个示例在此处演示分页:Gridview paging using CommandBar 以及演示如何在此处向RadGridView添加元素的示例:Add elements to RadGridView