Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/313.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/email/3.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#_Email - Fatal编程技术网

C# 如何在不替换旧附件的情况下添加附件?

C# 如何在不替换旧附件的情况下添加附件?,c#,email,C#,Email,我在做一个信息软件,我在做附件部分, 我可以附加文件,但当我尝试添加更多文件时,它会替换旧文件 代码如下: List<string> listaAnexos = new List<string>(); Archivo.Multiselect = true; Archivo.ShowDialog(); int cAnex = 0; string[] anexos = Archivo.FileNames; foreach (string i in anexos) {

我在做一个信息软件,我在做附件部分, 我可以附加文件,但当我尝试添加更多文件时,它会替换旧文件

代码如下:

List<string> listaAnexos = new List<string>();
Archivo.Multiselect = true;
Archivo.ShowDialog();
int cAnex = 0;
string[] anexos = Archivo.FileNames;

foreach (string i in anexos) 
{ 
    listaAnexos.Add(i);
    cAnex++;   
}
lbAnexos.DataSource = listaAnexos;
txtCAnex.Text = cAnex.ToString();
List listaAnexos=new List();
Archivo.Multiselect=true;
Archivo.ShowDialog();
int cAnex=0;
字符串[]anexos=Archivo.FileNames;
foreach(anexos中的字符串i)
{ 
添加(i);
cAnex++;
}
lbAnexos.DataSource=listaAnexos;
txtCAnex.Text=cAnex.ToString();

谢谢

假设上述代码被多次调用,您很可能需要在方法之外声明
listaAnexos

public class YourClass
{
    private List<string> listaAnexos = new List<string>();

    private void YourMethod()
    {
        Archivo.Multiselect = true;
        Archivo.ShowDialog();

        ...

        foreach (string i in anexos) 
        { 
            listaAnexos.Add(i);
            ...
每次运行上述方法时,您都会创建一个新的
listAnexos
实例来添加文件,然后将其分配给
lbAnexos.DataSource
,覆盖以前在其中的任何内容

listaAnexos
声明为类实例,而不是在方法内部

public class YourClass
{
    private List<string> listaAnexos = new List<string>();

    private void YourMethod()
    {
        Archivo.Multiselect = true;
        Archivo.ShowDialog();

        ...

        foreach (string i in anexos) 
        { 
            listaAnexos.Add(i);
            ...
公共类您的类
{
私有列表listaAnexos=新列表();
私有方法()
{
Archivo.Multiselect=true;
Archivo.ShowDialog();
...
foreach(anexos中的字符串i)
{ 
添加(i);
...

如果我听从你的建议,“Archivo”是一个SaveFileDialog,如果该类是私有的,我就不能使用以前创建的类,因此我需要在新类中创建一个新类?(很抱歉,我是C#新手)