UI插件开发过程关键点

手动新建类库项目(使生成代码命名风格与U9生成的代码保持一致);
//必须引用的dll
//UFSoft.UBF.UI.IView.dll (bin,applicationserver\bin)
//UFSoft.UBF.UI.FormProcess.dll (ubflib,applicationserver\bin)
//页面扩展按钮必须引用的dll
//UFSoft.UBF.UI.Engine.Runtime.dll (bin,applicationserver\bin)
//UFSoft.UBF.UI.WebControls.BaseComponent.dll (bin,applicationserver\bin)
//.NET的 System.Web
//UFSoft.UBF.UI.Controls.Interface.dll (bin,applicationserver\bin)
//UFSoft.UBF.UI.MD.Runtime.dll (ubflib,applicationserver\bin)
//......
UI插件可扩展的事件(常用的)
初始化后,创建控件树,创建关联控件
AfterInit(UFSoft.UBF.UI.IView.IPart part, EventArgs args)
Form加载后
AfterLoad(UFSoft.UBF.UI.IView.IPart Part, EventArgs args)
......
扩展类示例代码(参考代码)
public class ExtendUIProcess : UFSoft.UBF.UI.Custom.ExtendedPartBase
{
//后面事件需要通过IPart取值
private UFSoft.UBF.UI.IView.IPart _part;
///
/// 重写初始化后事件,创建控件树,创建关联控件
///
///
///
public override void AfterInit(UFSoft.UBF.UI.IView.IPart part, EventArgs args)
{
//首先调用原来的事件
base.AfterInit(part, args);
//校验有效
if (part == null || part.Model == null)
{return;}
_part = part;
//页面扩展-加按钮
#region 页面扩展-加按钮
//实例化按钮
IUFButton btnShowSubject = new UFWebButtonAdapter();
btnShowSubject.Text = "科目";
btnShowSubject.ID = "BtnShowSubject";
btnShowSubject.AutoPostBack = true;
//加入Card容器
IUFCard card = (IUFCard)part.GetUFControlByName(part.TopLevelContainer, "Card0");
card.Controls.Add(btnShowSubject);
CommonFunction.Layout(card,btnShowSubject, 18, 0);
//设置按钮事件
btnShowSubject.Click += new EventHandler(btnShowSubject_Click);
#endregion
}
}
//按钮事件
void btnShowSubject_Click(object sender, EventArgs e)
{
//写业务逻辑代码
//......
}
//集团人员写的类,可复制使用
public class CommonFunction
{
///
UI插件开发过程关键点
声明:除非特别标注,否则均为本站原创文章,转载时请以链接形式注明文章出处。如若本站内容侵犯了原著者的合法权益,可联系本站删除。



