从字符串或ComboBox值解析为Enum

时间:2017-04-15 13:11:05

标签: c# combobox enums

所以我得到了一个像程序一样构建库的项目。 一个程序,我有一些项目,如书籍,杂志和图书馆中存在的其他东西。在程序中,我可以添加新项目,删除项目,查看库存就像真正的库。

我使用C#WINRT WIN8.1。 在'AddItem'窗口中我有几个TextBoxes,我可以让用户添加项目标题,项目的已发布年份,作者姓名等。 但当我到达Genre Part(我用Enum创建)时,解析不起作用。 我尝试使用comumBox和Enum作为ItemsSource。 我尝试使用TextBox,让用户自己怀疑类型。

这是按钮中的代码我点击将项目添加到库中的项目列表中:

private void btnEnterItem_Click(object sender, RoutedEventArgs e)
    {
        //if the selected item in the comboBox is: Book
        //put all the relevant information in the book class/book list(add new book)
        //same thing if the selected item is journal or magazine
        if (typeCbox.SelectedValue.ToString() == "Book")
        {

            //Enum.TryParse<Genres>(genreCbok.SelectedValue.ToString(), out Genres);
            libMng.List.Add(new Book(tBlkItemTitle.Text, tBlkItemAuthor.Text, Enum.Parse(typeof(Genres) ,tBoxGenre.Text), Guid.NewGuid(), DateTime.Parse(tBlkItemYear.Text), true));
        }

*我有一类BOOK,Magazine,Journal,它们都继承自AbstractItem。 在AbstractItem类中,我有一个构造函数,它具有所有项属性,如:Title,PublishedYear,Guid等。

你能帮我理解哪种方式让用户选择一种类型,以及如何解析它以便能够将项目添加到列表中?

0 个答案:

没有答案