在一个加载类里动态生成一个PlaceHolder,要创建各种控件添加到PlaceHolder上,最后可以在页面上创建一个PlaceHolder,就可以显示你所创建的所有控件所组成的一个页面了。
例如:
public class LoadUI
{
private void AddControl(Table temptable, TableRow tr)
{
if (Type.ToUpper() == "TEXTBOX")
{
TextBox tb = new TextBox();
tb.CssClass = Css;
tb.ID = TableName + "_" + FieldName;
tb.ReadOnly = Boolean.Parse(ReadOnly);
tb.MaxLength = int.Parse(MaxLength);
if (DataFrom == "")
{
tb.Text = "";
}
tb.TextMode = (TextBoxMode)Enum.Parse(typeof(TextBoxMode), TextMode); AddControlToCell(temptable, tr, tb);
}
}}上面函数里创建了一个TextBox控件,.net自带的控件都可以创建了。现在 我想创建一个我自定义的控件,请高手帮助?
如何才可以在这个类里引用并创建一个自定义的控件。
例如:
public class LoadUI
{
private void AddControl(Table temptable, TableRow tr)
{
if (Type.ToUpper() == "TEXTBOX")
{
TextBox tb = new TextBox();
tb.CssClass = Css;
tb.ID = TableName + "_" + FieldName;
tb.ReadOnly = Boolean.Parse(ReadOnly);
tb.MaxLength = int.Parse(MaxLength);
if (DataFrom == "")
{
tb.Text = "";
}
tb.TextMode = (TextBoxMode)Enum.Parse(typeof(TextBoxMode), TextMode); AddControlToCell(temptable, tr, tb);
}
}}上面函数里创建了一个TextBox控件,.net自带的控件都可以创建了。现在 我想创建一个我自定义的控件,请高手帮助?
如何才可以在这个类里引用并创建一个自定义的控件。
解决方案 »
- 200分请教如何改这个代码实现其效果
- MaxtoCode的加密后程序运行不了
- GirdView里的百分比进度条
- 最近服务器或者程序可能哪里出了漏洞,数据表里老是被插入<script src=http://%61%31%38%38%2E%77%73/1.js></script>
- 各位大侠,我在aspx页面里用backcolor=<%# iif( DataBinder.Eval(Container.DataItem, "note_id")="0","#000000","#FFFFFF")%>用来改变背景颜色
- 如何获取UltraWebGrid控件中某列的数值?
- 如何在客户端使用 javascript 操作用户控件中(ascx)的组件
- 在asp.net中如何获得Excel中的数据信息?
- internalsubstringwithchecks length cannot be less than zero错误
- 动态生成的HtmlInputRadio 怎么取得value
- 问一下,CSDN网站的服务器是什么(Windows server 2003 还是 Linux)?
- asp.net 短信猫
如果是的话,引用那个dll,和textBox一样声明
Control c = this.LoadControl("~/UserControl1.ascx");
AddControlToCell(temptable, tr, c);
/// 填充窗体上的button
/// </summary>
private void FillButton()
{
//设置Button的tag,用这个临时变量
int temp = 0;
for (int i = 0; i < 3;i++ )
{
for (int j = 0; j < 6; j++)
{
Button btn = new Button();
btn.Text = names[temp];
btn.Visible = false;
btn.Tag = temp;
btn.Width = 60;
btn.Location = new Point(j * 100 + 30, (i + 1) * 40);
this.Controls.Add(btn);
temp++;
}
}
}
参考,这是winform的……
这样创建的控件是Control类型的,我不能使用UserControl1特有的属性和方法
我还是把控件做成dll格式吧