0

我正在寻找一种简单而优雅的方法来保留几个string并在 winforms 应用程序中以同样简单的方式访问它。

我有 10 个字符串变量,我以一种形式使用它们,每次我进行一些更改、按下按钮或任何其他操作时,我都需要更新这些值。

这是我如何用数据填充这些变量的代码:

string cDir = clientsbox2.SelectedItem.ToString();
string ClientPath = PMFunc.XMLDir(settings) + cDir;
string ProjectPath = PMFunc.XMLDir(settings) + cDir + @"\"
                     + outlookGrid1.CurrentRow.Cells[0].Value.ToString();
string pathString = Path.Combine(ProjectPath);
string path3DString = Path.Combine(ProjectPath + @"\02-3D");
string pathDatosString = Path.Combine(ProjectPath + @"\01-Datos");
string pathImagenesString = Path.Combine(ProjectPath + @"\03-Imagenes");
string pathProcesso3D = Path.Combine(ProjectPath + @"\02-3D\Processo");
string pathTrafico3D = Path.Combine(ProjectPath + @"\02-3D\Trafico");
string maxfilename = path3DString + @"\" + clientsbox2.SelectedItem.ToString() 
                    + @"-" + PMFunc.ReturnWipNumber(cDir,
                    outlookGrid1.CurrentRow.Cells[0].Value.ToString().ToString(),
                    outlookGrid1.CurrentRow.Cells[2].ToString()) + @"-"
                    + outlookGrid1.CurrentRow.Cells[0].Value.ToString() + @"-"
                    + PMFunc.ReturnCopyNumber(cDir,
                    outlookGrid1.CurrentRow.Cells[0].Value.ToString().ToString(),
                    outlookGrid1.CurrentRow.Cells[2].ToString()) + @".max";

正如您所看到的,其中一些是由表单中的一些对象生成的,而一些是由PMFunc我在单独文件中的类中的方法填充的。

所以每次我需要填充这些变量时,我都会使用这段代码,但我确信有一种方法可以更轻松地做到这一点。

你能给我建议吗?

4

1 回答 1

2

另一种选择是将这些变量变成带有读取组件值的 getter 的表单属性。

public string cdir
{
    get
    {
       return clientsbox2.SelectedItem.ToString();
    }
}

... etc
于 2013-07-29T22:14:53.677 回答