2016-11-11 8 views
0

暴露コントロールの値を表示しません。ユーザーコントロールは、私は、ユーザーコントロールを持っている

<div> 
    <asp:ListView ID="ListView1" runat="server"> 
     <ItemTemplate> 
      <uc1:WebUserControl1 runat="server" ID="WebUserControl1" ExpStrategyId='<%# Bind(StrategyId) %>' ExpTitle='<%# Bind(Title) %>' ExpCompany='<%# Bind(CompanyName) %>'/> 
     </ItemTemplate> 
    </asp:ListView> 
</div> 

そして、私は背後にあるコードでは、このようなデータソースをバインドします

public void LoadGridView() 
{ 
    localVm.EntityList = localVm.RetrieveMany(localVm.SearchItem); 
    ItemsGridView.AutoGenerateColumns = false; 
    ListView1.DataSource = localVm.EntityList; 
    ListView1.DataBind(); 
} 

私は自分のページに行くたびに、ユーザーコントロールに値を与えません。私は何を間違えているのですか?

答えて

1

データバインドコントロールがデータにバインドされる前に、ページLoadが呼び出されます。この

public partial class WebUserControl1 : System.Web.UI.UserControl 
{ 
    protected void Page_PreRenderComplete(object sender, EventArgs e) 
    { 
     TitleTextBox.Text = ExpTitle; 
     StrategyIdTextBox.Text = ExpStrategyId; 
     CompanyTextBox.Text = ExpCompany; 
    } 
    ... 
} 

ようPreRenderCompleteまたはRenderに変更しASP.NET Page Life Cycle Overview

を見て
関連する問題