C# 如何从数组填充组合框?

C# 如何从数组填充组合框?,c#,arrays,wpf,combobox,split,C#,Arrays,Wpf,Combobox,Split,我需要一个包含姓名和电话号码的文本文件。我的讲师给了我一段代码,把它分成两个数组。现在我很难用这些数组填充姓名和电话号码组合框。我得到的只是错误,说array1和array2在当前上下文中不存在。如何才能正确地执行此操作 这是我代码的相关部分 公共部分类主窗口:窗口 { 私有字符串cFileName=“customer.txt”; 私有字符串[]cNames=新字符串[0]; 私有字符串[]cPhoneNumbers=新字符串[0] public MainWindow() {

我需要一个包含姓名和电话号码的文本文件。我的讲师给了我一段代码,把它分成两个数组。现在我很难用这些数组填充姓名和电话号码组合框。我得到的只是错误,说array1和array2在当前上下文中不存在。如何才能正确地执行此操作

这是我代码的相关部分

公共部分类主窗口:窗口 { 私有字符串cFileName=“customer.txt”; 私有字符串[]cNames=新字符串[0]; 私有字符串[]cPhoneNumbers=新字符串[0]

    public MainWindow()
    {
        InitializeComponent();
        this.Loaded += new RoutedEventHandler(Window_Loaded);
    }

    private void read_Delimited_File(string fileName, ref string[] array1, ref string[] array2)
    {
        StreamReader fileSR = new StreamReader(fileName);

        char[] delimiters = { ',' };

        string[] tempArray = new string[0];
        string line = fileSR.ReadLine();
        while (line != null)
        {
            Array.Resize(ref array1, array1.Length + 1);
            Array.Resize(ref array2, array2.Length + 1);

            tempArray = line.Split(delimiters);

            array1[array1.Length - 1] = tempArray[0];
            array2[array2.Length - 1] = tempArray[1];
            line = fileSR.ReadLine();
        }
        fileSR.Close();
    }

    private void Window_Loaded(object sender, RoutedEventArgs e)
    {
        Keyboard.Focus(phoneTextBox);

        read_Delimited_File(cFileName, ref cNames, ref cPhoneNumbers);

        for (int i = 0; i < array1.Length; i++)
        {
            nameComboBox.Items.Add(array1[i]);
        }

        for (int i = 0; i < array2.Length; i++)
        {
            phoneNumberComboBox.Items.Add(array1[i]);
        }
    }
public主窗口()
{
初始化组件();
this.Loaded+=新的路由EventHandler(窗口已加载);
}
私有无效读分隔文件(字符串文件名,参考字符串[]array1,参考字符串[]array2)
{
StreamReader fileSR=新的StreamReader(文件名);
字符[]分隔符={',};
字符串[]临时数组=新字符串[0];
string line=fileSR.ReadLine();
while(行!=null)
{
Array.Resize(参考array1,array1.Length+1);
Array.Resize(参考array2,array2.Length+1);
tempArray=line.Split(分隔符);
array1[array1.Length-1]=临时数组[0];
array2[array2.Length-1]=临时数组[1];
line=fileSR.ReadLine();
}
fileSR.Close();
}
已加载私有无效窗口(对象发送器、路由目标)
{
键盘。焦点(电话文本框);
读取分隔的文件(cFileName、ref cNames、ref cPhoneNumbers);
for(int i=0;i
变量
array1
array2
仅存在于您的函数范围内


你想使用
cNames
cPhoneNumbers

我会解雇一个像你在2秒钟内那样编写代码的人。永远不要调整数组的大小。而是使用列表对象!!!试试这个

private void read_Delimited_File(string fileName, ref List<string> array1, ref List<string> array2)
        {
            StreamReader fileSR = new StreamReader(fileName);

            char[] delimiters = { ',' };

            string line = "";
            while ((line = fileSR.ReadLine()) != null)
            {
                string[] tempArray = line.Trim().Split(delimiters);
                array1.Add(tempArray[0]);
                array2.Add(tempArray[1]);
            }
            fileSR.Close();
        }
        private void Window_Loaded(object sender, RoutedEventArgs e)
        {
            Keyboard.Focus(phoneTextBox);
            List<string> cNames = new List<string>();
            List<string> cPhoneNumbers = new List<string>();


            read_Delimited_File(cFileName, ref cNames, ref cPhoneNumbers);

            for (int i = 0; i < array1.Length; i++)
            {
                nameComboBox.Items.Add(array1[i]);
            }

            for (int i = 0; i < array2.Length; i++)
            {
                phoneNumberComboBox.Items.Add(array1[i]);
            }
        }​
private void read\u Delimited\u文件(字符串文件名,ref List array1,ref List array2)
{
StreamReader fileSR=新的StreamReader(文件名);
字符[]分隔符={',};
字符串行=”;
而((line=fileSR.ReadLine())!=null)
{
字符串[]tempArray=line.Trim().Split(分隔符);
array1.Add(tempArray[0]);
array2.Add(tempArray[1]);
}
fileSR.Close();
}
已加载私有无效窗口(对象发送器、路由目标)
{
键盘。焦点(电话文本框);
List cNames=新列表();
List cPhoneNumbers=新列表();
读取分隔的文件(cFileName、ref cNames、ref cPhoneNumbers);
for(int i=0;i
嘿,我说我的讲师给了我使用的代码。别解雇我。解雇我的讲师。是的,他还说我应该让我的捕获物相互嵌套。社区学院不可能把我的钱还给我,到目前为止它是免费的。