C# 从其他窗口访问变量窗体并将其传递给其他.exe程序:
我对C#没有多少知识,而且已经学了一段时间了。 我想知道在其他.exe程序中是否有其他方法可以从另一个表单访问变量 在你得出结论说还有其他论坛与这个主题相关之前,是的,我在谷歌搜索了一下,找到了很多。但是我找不到一个和我想要的很接近的,或者我还没有找到。所以我决定在这里发表文章,看看在我还在寻找相关解决方案的时候,我是否能得到任何帮助 下面是我想做的一个简短的总结C# 从其他窗口访问变量窗体并将其传递给其他.exe程序:,c#,winforms,variables,inheritance,path,C#,Winforms,Variables,Inheritance,Path,我对C#没有多少知识,而且已经学了一段时间了。 我想知道在其他.exe程序中是否有其他方法可以从另一个表单访问变量 在你得出结论说还有其他论坛与这个主题相关之前,是的,我在谷歌搜索了一下,找到了很多。但是我找不到一个和我想要的很接近的,或者我还没有找到。所以我决定在这里发表文章,看看在我还在寻找相关解决方案的时候,我是否能得到任何帮助 下面是我想做的一个简短的总结 用户将输入一个包含数据的.csv文件,单击浏览按钮时,该文件的路径将存储在字符串变量FilePath中 在另一个同样使用C的软件程序
//窗口窗体代码
私有字符串文件路径;
公共字符串文件路径//查找“c#进程间通信”,您可能希望使用管道在一个程序中写入数据,在另一个程序中读取数据。@Longoon12000当然,我会查找的,谢谢!看。设置非常简单(正确),非常有效,并提供异步方法。如果您有保存数据的类对象,请使用XmlSerializer
类序列化类对象(不是二进制格式化程序),将流保存到MemoryStream和.WriteAsync()
中的[MemoryStream].ToArray()
内容。如果上下文中需要,您还可以传递CancellationToken。在接收方,只需对流进行反序列化。输入和输出流可以同时使用。另请参见:。好的。如果你遇到困难,请告诉我。
//Window Form Codes
private string filePath;
public string FilePath //<======= stored here
{
get { return filePath; } // get method
set { filePath = value; } // set method
}
//string filePath;
private void Browse_folder_Click(object sender, EventArgs e)
{
using (OpenFileDialog get_file_path = new OpenFileDialog())
{
if (get_file_path.ShowDialog() == DialogResult.OK)
{
//Get the path of specified file
FilePath = get_file_path.FileName;
file_loc_text.Text = string.Format("{0}", filePath);
return;
}
}
}
//.exe Program Codes
class BrowseFolderTestStep : ABC //<=== ABC is from another .exe program
{
Form f = new Form();
public override void Run()
{
StreamReader pathIn = File.OpenText(f.FilePath);
pathIn.Close();
}
}