我试图将文本框的文本绑定到我的类中的属性,它不起作用,我正在编辑后面的代码中的属性但我没有看到文本框中的字符串这是类,并且我试图绑定的属性叫做songFolder.
public class song : INotifyPropertyChanged
{
public string title {get; set; }
public string artist { get; set; }
public string path { get; set; }
public static string folder;
public string songsFolder { get { return folder; } set { folder = value; NotifyPropertyChanged("songsFolder"); } }
public event PropertyChangedEventHandler PropertyChanged;
private void NotifyPropertyChanged(String propertyName)
{
if (PropertyChanged != null)
{
PropertyChanged(this, new PropertyChangedEventArgs(propertyName));
}
}
public song()
{
}
public song(string title, string artist, string path)
{
this.title …Run Code Online (Sandbox Code Playgroud) 我使用DataGrid来显示数据库表中的项目,我使用的是EF CodeFirst,因此数据库查询会自动生成一个对象.
这是我的XAML:
<DataGrid Name="details" Margin="0,20,0,0" ItemsSource="{Binding}">
</DataGrid>
Run Code Online (Sandbox Code Playgroud)
这是它背后的代码:
data = new DbLayer();
int cardNumId = (from dataCardNum in data.creditCards
where dataCardNum.creditCardNumber == cardNum
select dataCardNum.Id).First();
debits =new ObservableCollection<Debit>(( from billings in data.charges
where billings.creditCardNumber.Id == cardNumId
select billings).ToList());
DataContext = debits;
Run Code Online (Sandbox Code Playgroud)
这解决了用我的数据库中的所有信息填充我的DataGrid.唯一的问题是我有两列我不想显示.我试图创建一个dataTemplate,它将使用我想要的列生成网格,但是当我将它绑定到datacontext时,它没有显示任何信息.
这是我的dataTemplate:
<DataTemplate x:Key="debitShow" DataType="DataTemplate:MonthBill.Debit">
<DataGrid>
<DataGrid.Columns>
<DataGridTextColumn Header="amount" Binding="{Binding amount}"/>
<DataGridTextColumn Header="charge date" Binding="{Binding chargeDate}"/>
<DataGridCheckBoxColumn Header="charged" Binding="{Binding charged}"/>
<DataGridTextColumn Header="store name" Binding="{Binding storeName}"/>
<DataGridTextColumn Header="purchase date" Binding="{Binding debitDate}"/>
<DataGridTextColumn Header="description" Binding="{Binding description}"/>
</DataGrid.Columns>
</DataGrid>
</DataTemplate>
Run Code Online (Sandbox Code Playgroud)
窗口xaml: …