/// <summary>
/// 继承DEV的多页控件,主要解决动态创建多页时每页的ClientSize不是随着TabControl的大小变化而且值始终为0的BUG
/// </summary>
public class DoiaXtraTabControl:DevExpress.XtraTab.XtraTabControl
{
public DoiaXtraTabControl()
{
//添加控件大小改变事件
this.SizeChanged += new EventHandler(UserTabControl_SizeChanged);
//添加集合发生改变事件
this.TabPages.CollectionChanged += new System.ComponentModel.CollectionChangeEventHandler(TabPages_CollectionChanged);
}
private void TabPages_CollectionChanged(object sender, System.ComponentModel.CollectionChangeEventArgs e)
{
this.UpdatePageSize();
}
private void UserTabControl_SizeChanged(object sender, EventArgs e)
{
this.UpdatePageSize();
}
protected override void UpdatePageSize()
{
base.UpdatePageSize();
}
}
本文介绍了一个继承自DevExpress.XtraTab.XtraTabControl的自定义控件DoiaXtraTabControl,该控件解决了动态创建多页时每页ClientSize始终为0的问题。通过添加TabControl的SizeChanged事件及TabPage集合的CollectionChanged事件监听,确保了页面尺寸能够正确更新。
2457

被折叠的 条评论
为什么被折叠?



