大佬教程收集整理的这篇文章主要介绍了如何在C#中将dropDownlist映射到枚举?,大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
private void BindDayOfWeek() { this.ddlDayOfWeek.DataSource = GetWeekDays(); this.ddlDayOfWeek.DataBind(); } private List<DayOfWeek> GetWeekDays() { return Enum.GetValues(typeof(DayOfWeek)).Cast<DayOfWeek>().ToList(); }
现在我想读取枚举DayOfWeek中所选工作日(来自下拉列表)的int值,即如果我从下拉列表中选择“Sunday”,我应该能够在枚举DaysOfWeek中选择“Sunday”的int值(不是ddlDayOfWeek.selectedValue或SelectedIndex)
如果没有开关和(如果我认为可以是一种方式),我怎么能这样做呢?
if(ddlDayOfWeek.SelectedIndex >= 0) { int selectedDay = int.Parse(ddlDayOfWeek.SelectedValue); DayOfWeek day = (DayOfWeek) selectedDay; }
如果你没有分开DataTextField和DataValueField(你应该怎么做),你可以通过Enum.Parse将DropDownList中显示的字符串“Sunday”解析为DayOfWeek:
DayOfWeek selectedDay = (DayOfWeek)Enum.Parse(typeof(DayOfWeek),ddlDayOfWeek.SelectedValue);
编辑:这是一种如何从枚举设置DataTextField / DataValueField的方法:
var weekDays = Enum.GetValues(typeof(DayOfWeek)).Cast<DayOfWeek>() .Select(dow => new { Value = (int)dow,Text = dow.ToString() }) .ToList(); ddlDayOfWeek.DataSource = weekDays; ddlDayOfWeek.DataTextField = "Text"; ddlDayOfWeek.DataValueField = "Value"; ddlDayOfWeek.DataBind();
以上是大佬教程为你收集整理的如何在C#中将dropDownlist映射到枚举?全部内容,希望文章能够帮你解决如何在C#中将dropDownlist映射到枚举?所遇到的程序开发问题。
如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。
本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。