asp:editcommandcolumn

.NET

4 svar · 209 visningar · startad av cyprys

Medlem sedan dec. 20003 563 inlägg
Trådstart#1

När man använder sig utav ovanstående så får alla columner en textbox med size=20. Jag skulle vilja välja en listbox eller kanske en annan size på den textboxen. Hur göra då?

Medlem sedan apr. 20012 266 inlägg
#2

Ett exempel:

		private void dgUsers_ItemDataBound(object sender, System.Web.UI.WebControls.DataGridItemEventArgs e)
		{
			if (e.Item.ItemType == ListItemType.EditItem)
			{
				for (int i = 0; i < e.Item.Controls.Count; i++)
				{
					if (e.Item.Controls[i].Controls[0].GetType().ToString() == "System.Web.UI.WebControls.TextBox")
					{
						TextBox tb = (TextBox)e.Item.Controls[i].Controls[0];
						tb.Width = new Unit(80);
						tb.CssClass = "standardForm";
					}
				}
			}
		}
Medlem sedan juni 20011 732 inlägg
#3

Du kan använda templates! Exempelvis:

<Columns>
  <asp:TemplateColumn>
    <ItemTemplate>
      //kod
    </ItemTemplate>
    <EditItemTemplate>
      //kod
    </EditItemTemplate>
  </asp:TemplateColumn>
</Columns>
Medlem sedan dec. 20003 563 inlägg
#4

Ok. Det finns alltså inget attribut om man bara vill sätta size=2 på textboxen t.ex. ?

Medlem sedan juni 20011 732 inlägg
#5

Nope, antingen får du leta fram den i koden eller göra en template där din textbox ligger "öppen".

259 ms totalt · 4 externa anrop · v20260731065814-full.d34c6d5a
119 ms — deklarationer (db)
0 ms — hämta statistik (cache)
131 ms — hämta tråd, inlägg och bilagor (db)
124 ms — ändringar (db)