我使用C#和WPF构建我的应用程序。所以这是问题....我的mainWindow.xaml文件及其mainWindow.cs文件。我还创建了另一个类文件Setting.cs。我尝试将mainWindow.xaml中的复选框带到settings.cs并处理它,然后发送回mainWindow.cs。但是当我打开它时,它无法关闭,我在settings.cs中添加的过程不起作用。是否与“公共静态空白”有关?
这是我的Setting.cs:
public class Setting
{
public static void loadSetting()
{
MainWindow win = new MainWindow();
XDocument document = XDocument.Load("UserSetting.xml");
var query = from p in document.Descendants("user_Setting")
where p.Element("id").Value == "1"
select p;
XElement element = query.First();
element.SetElementValue("Keep_Login",saveCheckBox(win.MyCheckBox);
}
public static void saveCheckBox(System.windows.Controls.CheckBox checkBox)
{
string status = "";
if (checkBox.IsChecked == true)
status = "true";
else if (checkBox.IsChecked == false)
status = "false";
return status;
}
}
我的MainWindow.cs:
public MainWindow()
{
InitializeComponent();
Setting.loadSetting();
}
答案 0 :(得分:1)
您的代码无法编译:
public static **string** saveCheckBox(System.windows.Controls.CheckBox checkBox)
{
string status = "";
if (checkBox.IsChecked == true)
status = "true";
else if (checkBox.IsChecked == false)
status = "false";
return status;
}
通过这种方式,您可以对代码的结果执行某些操作。我建议使用bool作为结果而不是字符串并更改方法的名称,因为您没有保存任何内容。