Asp.net 用户输入和服务器/用户控件
在创建应用程序页面或web部件时,我偶尔会发现在页面周围的多个位置有相同的几个下拉列表和标签Asp.net 用户输入和服务器/用户控件,asp.net,sharepoint,user-controls,web-parts,servercontrols,Asp.net,Sharepoint,User Controls,Web Parts,Servercontrols,在创建应用程序页面或web部件时,我偶尔会发现在页面周围的多个位置有相同的几个下拉列表和标签 Application Page _____________________ | lbl ddl lbl dll | | lbl ddl lbl ddl | | | | lbl ddl lbl dll | | lbl ddl lbl ddl | ----------------------- 最初,我会举一个例子,比如说,2个标
Application Page
_____________________
| lbl ddl lbl dll |
| lbl ddl lbl ddl |
| |
| lbl ddl lbl dll |
| lbl ddl lbl ddl |
-----------------------
最初,我会举一个例子,比如说,2个标签和2个下拉控件,我会在一个ascx文件中模拟它,称它为用户控件(后面有代码),然后将它粘贴到我的主应用程序页面的多个位置
Application Page
_____________________
| user user | User Control
| control control | ___________
| | | lbl ddl |
| user user | | lbl ddl |
| control control | -----------
-----------------------
问题最近,我被告知,如果每个用户控件中显示的下拉列表或标签等的数量是动态的,那么我应该使用服务器控件而不是用户控件
但我好像没办法做到!在服务器控件中,似乎没有html模型,所以您只有代码可以使用。我不知道如何存储用户输入,或者如何将用户输入从生成的代码移到后面的代码中
这是否意味着服务器控件仅用于创建单独的控件,如MySpecialTextBox?还是我完全错了?(有人有一个好的、复杂的示例项目我可以查看吗?)
我不知道如何存储用户输入,或将用户输入移动到
从生成的代码中隐藏代码
此下拉控件的用户输入总是在返回后返回。通过Request.Form
总是有一种简单的方法来获取它们,因此您可以使用:
Request.Form[Control.UniqueID]
因此,您只需在控件上添加唯一的名称,并在回发时记住/知道/重新创建该名称即可获得回发值