2010-10-08 61 views
1

我想從SQLServer中檢索鏈接列表,並以編程方式從該列表中創建一些HyperlinkBut​​ton。這些按鈕應該添加到StackPnael。做這個的最好方式是什麼?Silverlight 4:將HyperlinkBut​​ton動態添加到堆棧面板

東西線沿線的:

private void RefreshMenu() 
    { 
     var dc = new FrameworkCMSDomainContext(); 
     var query = dc.GetCMSPagesForSectionQuery(Section); 

     dc.Load(query, (s) => 
     { 
      foreach(var page in dc.CMSPages) 
      { 
       HyperlinkButton btn = new HyperlinkButton(); 
       btn.NavigateUri = new Uri("/" + Section + "/" + page.Name, UriKind.Relative); 
       btn.Content = page.Name; 
       btn.TargetName = "ContentFrame"; 
       //Add to stackpanel here 
      } 

     }, null); 
    } 

    <Grid x:Name="LayoutRoot" Background="White"> 
    <StackPanel x:Name="LinksStackPanel" Orientation="Vertical"> 

    </StackPanel> 
    <Button x:Name="AddPage" Click="AddPage_Click">Add</Button> 

</Grid> 

回答

3
LinksStackPanel.Children.Add(btn); 
+0

錯誤「LinkStackPanel」這個名字不會在目前情況下 – cmaduro 2010-10-08 23:17:07

+1

存在,則可以直接從代碼張貼的用戶控件背後的代碼包含底部的XAML? XAML的'x:Name'中的值是您可以用來從後面的代碼訪問控件的名稱。 (檢查你拼寫正確,你的評論缺少s) – Stephan 2010-10-11 16:12:42

+0

這是真的,我糾正它。但錯誤仍然存​​在。事實上,我拼寫錯了,因爲它不在智能感知彈出列表中。 – cmaduro 2010-10-11 17:36:42

相關問題