c#重构mainwindow,新建mainwindow后的数据独立问题
Closed this issue · 3 comments
Ocean326 commented
如题,我在public partial class MainWindow : Window中声明了一个数据集
public class SettingData
{
public static int IsOpen = 1;
public static int IsTop = 0;
public static int IsDeleted = 0;
public static DateTime CreateTime;
public static string SavePath = null;
public static int ThemeColor = 1;
public static DateTime LatestDate;
}
然后又重构了mainwindow函数,
public MainWindow()
public MainWindow(DataRow dataRow)
public MainWindow(string SavePath )
发现在其中一个窗口中修改参数时会影响其他窗口中的参数,请问如何实现窗口间的参数独立?
crclz commented
建议搜索static
关键词的意思。大概就是全局的效果。
解决方案:
- 去掉static:
public class SettingData
{
public int IsOpen = 1;
public int IsTop = 0;
public int IsDeleted = 0;
public DateTime CreateTime;
public string SavePath = null;
public int ThemeColor = 1;
public DateTime LatestDate;
}
- 让每一个Window都拥有独立的SettingData成员。(为每一Window创建独立的
SettingData
成员)
Ocean326 commented
那怎么创建独立的SettingData成员呢(在一个mainwindowclass里?
crclz commented
class XXXX
{
public SettingData Setting = new SettingData();
...
}
这是面向对象的基础知识