1
我正在開發一個小型應用程序,它需要將用戶定義的值添加到網格中。問題是,即使他們認爲他們添加正確(我檢查了調試器),他們沒有正確顯示在網格中。將行添加到Silverlight 4中的DataGrid中
屏幕截圖:
。
下面是代碼:
XAML:
public ObservableCollection<DefaultValue> defaultValues;
//Class:
public class DefaultValue
{
public string DefVal;
public DefaultValue(string val)
{
this.DefVal = val;
}
}
初始化頁面的構造函數:
<sdk:DataGrid x:Name="defaultValueDataGrid" AutoGenerateColumns="False" Height="150" Margin="0,0,10,0">
<sdk:DataGrid.Columns>
<sdk:DataGridTextColumn x:Name="valColumn" Binding="{Binding DefVal, Mode=OneWay}" IsReadOnly="True" Header="SomeHeader" Width="*" />
</sdk:DataGrid.Columns>
</sdk:DataGrid>
的ItemSource收集和容器類的定義:
this.defaultValues = new ObservableCollection<DefaultValue>();
this.defaultValueDataGrid.ItemsSource = this.defaultValues;
最後一點功能,增加值:
private void AddNewDefaultValueBtn_Click(object sender, RoutedEventArgs e)
{
if (!string.IsNullOrEmpty(this.newDefaultValueTxtBx.Text))
{
this.defaultValues.Add(new DefaultValue(this.newDefaultValueTxtBx.Text));
this.defaultValueDataGrid.ItemsSource = this.defaultValues;
}
}
沒什麼特別的,對不對?對,但它不起作用,我會欣賞提示和幫助。 Ps。我已經使用this教程。
謝謝,這解決了這一問題。重新嘗試是嘗試不同方法時剩下的一部分。隊友的歡呼聲 – neurotix 2011-12-30 09:57:24