您好我需要能够在Usercontrol中使用我的主窗口中的列表,我需要能够在各种Usercontrols中编辑和读取它。
主窗口:
public partial class MainWindow : Window
{
public List<Termin> termine = new List<Termin>();
public MainWindow()
{
InitializeComponent();
}
}
用户控件:
public partial class KalenderAnsicht : UserControl
{
public KalenderAnsicht()
{
InitializeComponent();
}
private void SomeMethod()
{
//i need to be able to use the list here
}
}
答案 0 :(得分:1)
您需要以某种方式获得对MainWindow
的引用。最简单的方法是使用Application.Current.Windows
属性:
private void SomeMethod()
{
var mw = Application.Current.Windows.OfType<MainWindow>().FirstOrDefault();
List<Termin> termine = mw.termine;
//...
}
您还可以考虑制作termine
static
:
public partial class MainWindow : Window
{
public static List<Termin> termine = new List<Termin>();
public MainWindow()
{
InitializeComponent();
}
}
...并直接访问它而不引用MainWindow
的实例:
private void SomeMethod()
{
List<Termin> termine = MainWindow.termine;
//...
}