C# 绑定值为null/空时的dev express网格视图组合框默认值
以下是我在dev express网格视图编辑模板中使用的组合框代码。 我希望组合框在添加新员工时不显示任何内容,或者在编辑时显示“请选择和员工”的字符串C# 绑定值为null/空时的dev express网格视图组合框默认值,c#,asp.net-mvc,gridview,razor,devexpress,C#,Asp.net Mvc,Gridview,Razor,Devexpress,以下是我在dev express网格视图编辑模板中使用的组合框代码。 我希望组合框在添加新员工时不显示任何内容,或者在编辑时显示“请选择和员工”的字符串 @Html.DevExpress().ComboBox(edtSettings => { edtSettings.Width = 200; edtSettings.Name = "EmployeeID";
@Html.DevExpress().ComboBox(edtSettings =>
{
edtSettings.Width = 200;
edtSettings.Name = "EmployeeID";
//edtSettings.Properties.TextField = "FirstName";
edtSettings.Properties.ValueField = "EmployeeID";
edtSettings.Properties.ValueType = typeof(int);
edtSettings.Properties.DropDownStyle = DropDownStyle.DropDownList;
edtSettings.ShowModelErrors = true;
edtSettings.Properties.TextFormatString = "{0}" + " " + "{1}";
edtSettings.Properties.Columns.Add("FirstName", "First Name", 150);
edtSettings.Properties.Columns.Add("LastName", "Last Name", 150);
//--- For client side validations
edtSettings.Properties.ValidationSettings.RequiredField.IsRequired = true;
edtSettings.Properties.ValidationSettings.RequiredField.ErrorText = "An Employee must be selected from the list.";
}).BindList(Model.NonUsers).Bind(Model.UserSingle.EmployeeID).GetHtml()
我这样做是为了传递正确的Model.UserSingle,以及以下内容
var User = ViewData["UserDetail"] != null
? ViewData["UserDetail"]
: !c.Grid.IsNewRowEditing
? Model.UserList.FirstOrDefault(m => m.EmployeeID == Convert.ToInt32(DataBinder.Eval(c.DataItem, "EmployeeID")))
: new User
{
SiteID = (int)Session["siteID"],
////employee ID cant set to blank, keeps adding a zero
//EmployeeID = Convert.ToInt32(null),
//this is defaulted to 'Timesheet Only'
UserGroupID = 3
};
Model.UserSingle = (User)User;
在中,您可以使用此属性:
edtSettings.Properties.NullDisplayText = "Please Choose and Employee";
目前,MVC组合框扩展不允许将“Null项”(Null文本,水印)添加到Items集合中。 它在DevEx待办事项列表中 你可以试试这个解决办法
@Html.DevExpress().ComboBox(edtSettings =>
{
edtSettings.Properties.ClientSideEvents.Init = "function(s,e){if(s.GetValue()=='0'){ s.SetValue(null);} }";
...
谢谢你的建议,但我已经试过了,这不是我想要的。似乎是我正在寻找的,我会在一两天内尝试一下,让你知道我怎么做。谢谢亚历杭德罗。