Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/string/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 如何使字符串可供所有窗体访问?_C#_String_Listview_Global - Fatal编程技术网

C# 如何使字符串可供所有窗体访问?

C# 如何使字符串可供所有窗体访问?,c#,string,listview,global,C#,String,Listview,Global,我有一个名为AddFile.cs的表单,还有一个文本框tbPassword和按钮btnOkay。我想做的是(点击一个按钮)将这个文本框的文本变成一个字符串,这样我就可以在所有表单中使用它,并将它添加到ListView,这样它就可以在ListView中显示用tbPassword编写的文本。你可以在表单类中创建一个公共方法,并调用它以获得结果: public string GetPassword() { return tbPassword.Text; } AddFile addFileForm

我有一个名为AddFile.cs的表单,还有一个文本框
tbPassword
和按钮
btnOkay
。我想做的是(点击一个按钮)将这个文本框的文本变成一个字符串,这样我就可以在所有表单中使用它,并将它添加到
ListView
,这样它就可以在
ListView

中显示用
tbPassword
编写的文本。你可以在
表单
类中创建一个公共方法,并调用它以获得结果:

public string GetPassword()
{
  return tbPassword.Text;
}
AddFile addFileForm = new AddFile();
addFileForm.ShowDialog();
string password = addFileForm.GetPassword();
因此,当您显示对话框时,可以调用该对话框以获得结果:

public string GetPassword()
{
  return tbPassword.Text;
}
AddFile addFileForm = new AddFile();
addFileForm.ShowDialog();
string password = addFileForm.GetPassword();

您可以在公共静态类中使用一个公共静态字符串变量来存储这样的内容,以使所有表单都可以访问它

如果您希望在没有表单实例的情况下对所有应用程序进行全局访问,您可以使用静态属性:

public static string Password{ get; set; }
然后将值分配给该属性,您可以在任何地方使用如下内容:

string pass = MyFormClass.Password;

有时,在应用程序中存储一些全局信息是件好事

实现这一点的一个简单方法是在默认根命名空间的全局命名空间中有一个名为eg.Global的公共静态类,其中可以包含需要持久化的数据的静态属性

然而,我不得不说,正如其他人指出的那样,存储密码需要特别小心,并尽可能避免使用

“所有形式都可以访问”听起来好像你对c#了解不多。首先尝试一些教程。顺便说一句,为什么要用其他形式显示密码?在C#net上进行谷歌搜索。教程也可以从这里开始阅读和学习基础知识。。而且你永远不想公开密码。。这是一种不良做法