2013-10-10 25 views
0

我有一個列表視圖,我想在每個gridview列單元格內添加一個文本框,以便我可以鍵入數據,然後獲取該數據。列表視圖單元格內的文本框

我正在創建一個datatemplate並將其傳遞給GridViewColumn的單元格模板,但是當我查看listview時,我無法向單元格添加任何東西。它看起來不像是甚至創建了文本框。

  GridViewColumn conceptColumn = new GridViewColumn(); 
      conceptColumn.Header = conceptName; 

      conceptColumn.CellTemplate = this.GetDataTemplate(); 
      this.TestModeler.Columns.Add(conceptColumn); 
      conceptColumn.DisplayMemberBinding = new Binding(conceptName); 


    private DataTemplate GetDataTemplate() 
    { 
     DataTemplate dt = new DataTemplate(typeof(TextBox)); 
     FrameworkElementFactory txtElement = new FrameworkElementFactory(typeof(TextBox)); 
     dt.VisualTree = txtElement; 

     Binding bind = new Binding(); 
     bind.Path = new PropertyPath("Text"); 
     bind.Mode = BindingMode.TwoWay; 

     txtElement.SetBinding(TextBox.TextProperty, bind); 
     txtElement.SetValue(TextBox.TextProperty, "test"); 

     return dt; 
    } 
+1

不要在WPF中的過程代碼中創建或操作UI元素。這就是XAML的用途。 –

回答

0

請大家看看ListView Class頁面在MSDN這裏你可以找到一個XAML例子和大量的鏈接瞭解如何做各種事情與WPF ListView

對您特別感興趣的,請查看How to: Use Templates to Style a ListView That Uses GridView頁面,其中解釋了您正在嘗試做什麼(但在XAML中)並附帶示例。

MSDN應該總是是你先來看看的地方,因爲它是的只是在等待被讀取信息的充分

相關問題