重複の可能性:
WPF XAML でネストされたクラスを使用するには?
サンプルからコードを屈折させています:
- 24.129.21。
C#からのマスター ディテール バインディング/ CSharp チュートリアル» Windows Presentation Foundation » バインディング)
Skills クラスを除外した後
、MainWindow.xamlに対応する変更を加えます。
<local:Team>
<local:Employee Name="Larry" Age="21">
<local:Employee.Skills>
<!-- local:Skills -->
<local:Skills>
私はMainWindow1.xaml.csに持っています:
using System.Collections.Generic;
using System.Collections.ObjectModel;
using System.Windows;
namespace WpfApplication
{
public class Skill
{//I'd like to remove class Skill having moved property string Description into class Employee
public string Description { get; set; }
}
public class Employee
{
public string Name { get ; set; }
public int Age { get; set; }
//I'd like to change in the next line Skill --> String
public List<Skill> Skills { get; set; }
//public List<String> Skills { get; set; }
public Employee()
{
//I'd like to change in the next line Skill --> String
Skills=new List<Skill>();
//Skills=new List<string>();
}
}
public class Team : ObservableCollection<Employee> { }
public class Company
{
public string CompanyName { get ; set; }
public Team Members { get ; set; }
}
public class Companies : ObservableCollection<Company> { }
public partial class Window1 : Window
{
public Window1()
{
InitializeComponent();
}
}
}
変更する場合、どのように Window1.XAML を変更する必要がありますか:
List<Skill>
にList<String>
Window1.xaml.cs で?
同じコードに基づく関連する質問:
更新:
私が間違ったことに注意してください:
- A の代わりに "A" (引用符なし)。
- XAMLである必要があります
String
(ただし、そうではありませんstring
) (C# ではstring
またはString
) - 次の代わりに、既存のコードに従って、Aを属性として1つのタグに配置しようとしました
<sys:String />
:<sys:String>A</sys:String>