我創建了一個UserControl(下拉菜單),並在GridView的EditTemplate中使用它。下拉的選擇值(UserControl)沒有在asp.net中的GridView中被選中
<EditItemTemplate>
<eluc:AddrType ID="ucIssuingAuthorityEdit" runat="server" AddressType="139" AddressList='<%# PhoenixRegistersAddress.ListAddress("139") %>'
AppendDataBoundItems="true" CssClass="dropdown_mandatory" SelectedAddress='<%# DataBinder.Eval(Container,"DataItem.FLDISSUINGAUTHORITY") %>' />
</EditItemTemplate>
SelectedAddress是將設置下拉列表的SelectedValue的屬性。如果我在正常的aspx頁面內使用相同的usercontrol,它將被選中。但在GridView內部沒有被選中。
供選擇的用戶控件的代碼爲:
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
ddlAddressType.DataSource = PhoenixRegistersAddress.ListAddress(addresstype);
ddlAddressType.DataBind();
foreach (ListItem item in ddlAddressType.Items)
{
if (item.Value == _selectedValue.ToString())
{
item.Selected = true;
break;
}
}
}
}
這裏的物業SelectedAddress
public string SelectedAddress
{
get
{
return ddlAddressType.SelectedValue;
}
set
{
if (value.Trim().Equals(""))
return;
_selectedValue = Int32.Parse(value);
foreach (ListItem item in ddlAddressType.Items)
{
if (item.Value == _selectedValue.ToString())
{
item.Selected = true;
break;
}
}
}
}
任何一個可以建議我爲什麼它是如此。
在此先感謝..
你在每次回傳或者只'!Page.IsPostback'結合GridView的? –
在每一個回發我都綁定它。 –
你在GridView中設置SelectedAddress的位置? –