如果您将名称留空,如何保存ID?

时间:2016-11-23 14:59:51

标签: c# wpf

我在这个项目中工作了两天,我找不到我做错的地方。如果你能帮助我,我真的很感激。问题是当我输入11111为我的策展人ID并保留名称Box Empty,不保存保存策展人ID。如果我在框中输入内容并输入11111作为策展人ID,则表示" ID已经存在,请再试一次"

private void SaveCuratorBtn_Click(object sender, RoutedEventArgs e)
{
    curator Curator = new curator();
    try
    {
        Curator.ID = CuratorIDbox.Text;
        bool sameid = false;
        for (int i = 0; i < curatorlist.Count; i++)
        {
            if (curatorlist[i].ID == Curator.ID)
            {
                sameid = true;
                break;
            }
        }
        if (sameid)
            MessageBox.Show("ID already exist please try again !");
        else
        {
            curatorlist.add(Curator);
        }
    }
    catch (Exception error)
    {
        MessageBox.Show(error.Message);
    }
    try
    {
        bool checkingname = false;
        Curator.NAME = CuratorNamebox.Text;
        checkingname = true;
        if (checkingname)
        {
            MessageBox.Show("Curator Saved");
        }
    }
    catch (Exception error)
    {
        MessageBox.Show(error.Message);
    }
}

2 个答案:

答案 0 :(得分:3)

if (sameid)
{
    MessageBox.Show("ID already exist please try again !");
}
else
{
    curatorlist.add(Curator);
}

此代码块正在执行以下操作:

  • 如果ID已存在,则显示错误(好!)

  • 如果该ID不存在,将整个馆长添加到curatorlist

您需要的是在代码中验证的另一个步骤,以确保name文本框和ID文本框包含信息。您可以这样做(当然替换名称):

else 
{
    if(string.IsNullOrEmpty(NameTextbox.Text) || string.IsNullOrEmpty(IdTextbox.Text) 
{
    MessageBox.Show("Uh oh!")
} else {
    curatorlist.add(Curator);
}

在考虑将Curator添加到curatorlist之前,您要检查文本框是否为空。如果您需要进行其他检查(例如[1,2,3,4]中没有数字NameTextbox),则有多种方法可以执行此操作。

答案 1 :(得分:1)

你说&#34;当我输入11111作为我的馆长ID并保留名称Box Empty时,不应该保存策展人ID&#34 ;;但是您提供的示例代码中没有任何内容可以防止这种情况发生。那可能是你想要的;但你还没有这样编码:&#34; curatorlist.add(策展人);&#34;无论名称框中的内容是什么,都会将策展人添加到集合中。

P.S。考虑使用字典,因为查找会更快。