好像我在这里遇到了一堵墙.我想要一些数据源绑定到asp.net转发器(好吧,不一定是转发器,但似乎这就是我想要的).现在,这里有一个问题:我还需要在转发器内部使用一些服务器控件来更新数据(TextBox'es和按钮).
根据我的理解,这是否真的可以有条不紊地进行?我不能只是在itemtemplate中添加一个文本框,然后在代码隐藏中稍后获取它.至少不容易.这种问题是否有任何已知技术?
我不能使用gridview,因为数据需要以某种方式格式化.
我正在开发导航菜单.
我在ServerControl下面创建它可以工作,但我希望允许用户在我的ServerControl标签中添加一些标准的ASP.NET控件label,image等等.
<MdsMenu:ServerControlMenu ID="ServerControlMenu1" runat="server">
<MdsMenu:animation AnimationSpeed="Normal" AnimationType="Opacity_Height" Delay="1000" DropShadow="true" />
<!-- HERE HAS TO HAVE SOME STANDARD ASP.NET CONTROLS -->
<!-- e.g <asp:Label ID="Label1" runat="server" Text="Label"></asp:Label> -->
</MdsMenu:MenuItem>
</MdsMenu:ServerControlMenu>
Run Code Online (Sandbox Code Playgroud)
我的问题在于我如何获得Child Controls <MdsMenu:MenuItem>并将它们显示为输出中的.
PS:
我覆盖了RenderContents方法
protected override void RenderContents(HtmlTextWriter output)
{
output.Write(OutPutStringBuilder.ToString());
}
Run Code Online (Sandbox Code Playgroud) 我要提前报警,因为我真的处于对此的理解极限,所以如果我不解释这个......很抱歉......
无论如何,我正在尝试创建一个具有复杂属性的asp.net服务器控件,可以使用intellisense设置.因此,作为一个例子,我将使用汽车,因此服务器控件可能被称为汽车,当我实际在webform上实现控件时,我想设置复杂的分层属性,例如:
<Control:Car Color="Paint.Metalic.CandyRed"
Wheels="Forged.Aluminun.FiveSpoke.GunMetal" />
Run Code Online (Sandbox Code Playgroud)
要么
<Control:Car Color="Paint.Matte.Yellow"
Wheels="Forged.Steel.SevenSpoke.BareMetal" />
Run Code Online (Sandbox Code Playgroud)
我已经尝试在服务器控件中创建公共属性,它们只是指向基类的类型/类,但是intellisense没有提供任何东西.我可以使用一个直接的枚举,这将显示,但我不能做任何分层的方式.我一直在寻找例子,但我似乎找不到任何东西.任何帮助将不胜感激!!!!
谢谢!
一个不同的例子怎么样,看起来项目之间的关系或它们的预期价值虽然完全不重要,但似乎是一个问题.
让我们来看看大陆/国家/州/城市/等之间的关系....通过这个例子,如果我的自定义服务器控件被称为"位置",那么我希望能够......
<Control:Location CurrentLocation="UnitedStates.Nebraska.Lincoln" />
Run Code Online (Sandbox Code Playgroud)
要么
<Control:Location CurrentLocation="Europe.Italy.Napoli" />
Run Code Online (Sandbox Code Playgroud) 我不知道为什么这不起作用.
<asp:Label ID="lblTitle1" runat="server" Text='<%= string.Format("{0} <br /> {1}","Part 1", "Part 2") %>' ></asp:Label>
Run Code Online (Sandbox Code Playgroud)
我只想将两个资源字符串组合成标签文本?
我有一个LINQ分组,我想用它来填充父和子转发器控件.
<asp:Repeater ID="Parent" runat="server" OnItemDataBound="Parent_ItemDataBound">
<ItemTemplate>
<%# Eval("Key") %>
<asp:Repeater ID="Child" runat="server">
<ItemTemplate>
<%# Eval("Id") %>
<%# Eval("Name") %>
</ItemTemplate>
</asp:Repeater>
</ItemTemplate>
</asp:Repeater>
public class Dog
{
public int Id { get; set; }
public string Name { get; set; }
public string Breed { get; set; }
}
private IEnumerable<IGrouping<string, Dog>> GetDogs()
{
var dogs = new List<Dog>
{
new Dog
{
Id = 1,
Name = "Rex",
Breed = "Poodle",
},
new Dog
{
Id = 2,
Name …Run Code Online (Sandbox Code Playgroud)