public void SetPropertyGrid(string nodeName, string filterType, string filterItem, string isNew) { try { var data = new List <object>(); var reportSettingEntity = new BSetting(); var _source1 = ColumnPropertyGrid1.Source; var _source2 = ColumnPropertyGrid2.Source; var _source3 = ColumnPropertyGrid3.Source; var filter = Int32.Parse(filterType); var enmFilter = Enum.IsDefined(typeof(EnmAlarmFiterType), filter) ? (EnmAlarmFiterType)filter : EnmAlarmFiterType.AlarmDeviceID; Dictionary <int, string> dict = null; switch (enmFilter) { case EnmAlarmFiterType.AlarmDeviceID: _source1["ColName"].Value = nodeName; _source1["FilterType"].Value = filterType; _source1["FilterItem"].Value = filterItem; dict = reportSettingEntity.GetAlarmDeviceType(); if (dict != null && dict.Count > 0) { var items = WebUtility.StringSplit(filterItem); foreach (var key in dict) { data.Add(new { Id = key.Key.ToString(), Name = key.Value }); } var store = ConditionMultiCombo.GetStore(); store.DataSource = data; store.DataBind(); } ColumnPropertyGrid1.SetSource(_source1); ColumnPropertyGrid1.Hidden = false; ColumnPropertyGrid2.Hidden = true; ColumnPropertyGrid3.Hidden = true; break; case EnmAlarmFiterType.AlarmLogID: _source1["ColName"].Value = nodeName; _source1["FilterType"].Value = filterType; _source1["FilterItem"].Value = filterItem; dict = reportSettingEntity.GetAlarmLogType(); if (dict != null && dict.Count > 0) { var items = WebUtility.StringSplit(filterItem); foreach (var key in dict) { data.Add(new { Id = key.Key, Name = key.Value }); } var store = ConditionMultiCombo.GetStore(); store.DataSource = data; store.DataBind(); } ColumnPropertyGrid1.SetSource(_source1); ColumnPropertyGrid1.Hidden = false; ColumnPropertyGrid2.Hidden = true; ColumnPropertyGrid3.Hidden = true; break; case EnmAlarmFiterType.AlarmID: _source1["ColName"].Value = nodeName; _source1["FilterType"].Value = filterType; _source1["FilterItem"].Value = filterItem; dict = reportSettingEntity.GetAlarmName(); if (dict != null && dict.Count > 0) { var items = WebUtility.StringSplit(filterItem); foreach (var key in dict) { data.Add(new { Id = key.Key, Name = key.Value }); } var store = ConditionMultiCombo.GetStore(); store.DataSource = data; store.DataBind(); } ColumnPropertyGrid1.SetSource(_source1); ColumnPropertyGrid1.Hidden = false; ColumnPropertyGrid2.Hidden = true; ColumnPropertyGrid3.Hidden = true; break; case EnmAlarmFiterType.TimeShare: _source2["ColName"].Value = nodeName; _source2["FilterType"].Value = filterType; var times = WebUtility.StringSplit(filterItem); if (times.Length == 2) { _source2["FilterItem1"].Value = WebUtility.GetSecondFromDateTime(times[0]).ToString(); _source2["FilterItem2"].Value = WebUtility.GetSecondFromDateTime(times[1]).ToString(); } ColumnPropertyGrid2.SetSource(_source2); ColumnPropertyGrid1.Hidden = true; ColumnPropertyGrid2.Hidden = false; ColumnPropertyGrid3.Hidden = true; break; case EnmAlarmFiterType.AlarmDesc: case EnmAlarmFiterType.NodeName: case EnmAlarmFiterType.DevName: _source3["ColName"].Value = nodeName; _source3["FilterType"].Value = filterType; _source3["FilterItem"].Value = filterItem; ColumnPropertyGrid3.SetSource(_source3); ColumnPropertyGrid1.Hidden = true; ColumnPropertyGrid2.Hidden = true; ColumnPropertyGrid3.Hidden = false; break; default: break; } } catch (Exception err) { WebUtility.WriteLog(EnmSysLogLevel.Error, EnmSysLogType.Exception, err.ToString(), Page.User.Identity.Name); WebUtility.ShowMessage(EnmErrType.Error, err.Message); } }