2016-12-17 96 views
0

Im新的WPF和im試圖添加選項卡到我的TabControl。 LoadTable函數返回一個DataTable,其中包含信息,並應爲每個Tab的DataGrid表示。動態添加Tabitems與Datagrid

for (int i = 1; i <= number_MaxSemester; i++) 
{ 
    TabItem item = new TabItem(); 

     // Name of TabItem 
     item.Header = i + ". Semester"; 

     //Contains the Data from Database 
     item.DataContext = loadTable(); 

     Tabs.Items.Add(item); 
} 

可裝入該函數返回的數據表

public DataTable loadTable() 
    { 
     DataTable dt = new DataTable(); 

     try 
     { 
      //Open Connection to Database 
      using (SQLiteConnection con = new SQLiteConnection(cs)) 
      { 
       //Command string for the Sqlite Command 
       string query = "SELECT Fach, Note, Statusfach, Versuch from infostudent WHERE username = + '" + UserName.Content + "'"; 

       SQLiteDataAdapter dbAdapter = new SQLiteDataAdapter(query, con); 


       //Fill Data with SQLite Data 
       dbAdapter.Fill(dt); 
      } 
     } 
     catch (Exception ex) 
     { 
      MessageBox.Show(ex.Message); 
     } 

     return dt; 
    } 

這裏是XAML代碼:

<TabControl x:Name="Tabs" Margin="10,61,0,57" Width="584" HorizontalAlignment="Left"> 
     <TabControl.ItemTemplate> 
      <DataTemplate> 
       <DataGrid /> 
      </DataTemplate> 
     </TabControl.ItemTemplate> 
    </TabControl> 
+0

那麼,什麼是你的問題是什麼呢?我沒有看到任何。由於這是你的第一個問題,請閱讀[常見問題]和[問]作爲開始。 –

+0

@SonerGönülDataGrid中的數據未顯示。查找ive添加了問題 – y4cO

+0

您是否檢查了此鏈接[WPF C#編程式添加和移動標籤](http://stackoverflow.com/questions/4968367/wpf-c-sharp-programatically-adding-and-moving-tabs) –

回答

0

中的TabItem的內容屬性設置爲您的數據表:

for (int i = 1; i <= number_MaxSemester; i++) 
{ 
    TabItem item = new TabItem(); 

    // Name of TabItem 
    item.Header = i + ". Semester"; 

    //Contains the Data from Database 
    item.Content = loadTable(); 

    Tabs.Items.Add(item); 
} 

...和DataGrid的到DataTable的默認視圖ItemsSource屬性綁定在內容模板的TabControl的的:

<TabControl x:Name="Tabs"> 
    <TabControl.ContentTemplate> 
     <DataTemplate> 
      <StackPanel> 
       <DataGrid ItemsSource="{Binding DefaultView}" /> 
      </StackPanel> 
     </DataTemplate> 
    </TabControl.ContentTemplate> 
</TabControl> 
+0

非常感謝你!它的工作現在!綁定是問題 – y4cO