or

<telerik:GridEditCommandColumn UniqueName="UpdateCommandName" ButtonType="ImageButton" EditImageUrl="../Images/edit_icon.png"></telerik:GridEditCommandColumn><EditFormSettings EditFormType="Template" FormMainTableStyle-HorizontalAlign="Center" FormCaptionStyle-BorderColor="Black" FormMainTableStyle-BackColor="#B0C4DE"><FormTemplate> <table class="GridEdittemplate">
Protected Sub myRadGrid_NeedDataSource(sender As Object, e As GridNeedDataSourceEventArgs) Handles myRadGrid.NeedDataSource Dim UserLogon As String = Split(Current.User.Identity.Name, "\")(1) Dim sqlWhere As String = "" Dim name As String = HFID.Value.ToString Dim Counter As Integer = 0 If FillGrid = True Then FILL radgrid with sql statement myRadGrid.DataSource = getdata(sql) end ifSo my problem is when I click on teh edit button it blanks out the grid and it becomes invisible and it has to do with posting back and showing the edit form but how can i pass in teh fillgrid boolean statement.
using System;using System.Collections;using System.Configuration;using System.Data;using System.Linq;using System.Linq.Dynamic;using System.Web;using System.Web.Security;using System.Web.UI;using System.Web.UI.HtmlControls;using System.Web.UI.WebControls;using System.Web.UI.WebControls.WebParts;using System.Xml.Linq;using Telerik.Web.UI;namespace WeightWatchers.EnvironmentConfig{ public partial class _Default : System.Web.UI.Page { private WeightWatchers.EnvironmentConfig.EnvironmentConfig _config; protected void Page_Load(object sender, EventArgs e) { } protected override void OnInit(EventArgs e) { base.OnInit(e); RadGrid1.NeedDataSource += (s, a) => { _config = new EnvironmentConfig.EnvironmentConfig(MapPath(@".\App_Data\environment.config.csv")); if (RadGrid1.MasterTableView.SortExpressions.Count > 0) RadGrid1.DataSource = GetEntities(RadGrid1.MasterTableView.FilterExpression, RadGrid1.MasterTableView.SortExpressions[0].FieldName + " " + RadGrid1.MasterTableView.SortExpressions[0].SortOrderAsString()); else RadGrid1.DataSource = GetEntities(RadGrid1.MasterTableView.FilterExpression, ""); }; RadGrid1.UpdateCommand += (s, a) => { //Get the GridEditableItem of the RadGrid GridEditableItem editedItem = a.Item as GridEditableItem; string Name = editedItem.OwnerTableView.DataKeyValues[editedItem.ItemIndex]["Name"].ToString(); try { if (this.Validate(Name, true, editedItem)) { this.UpdateAddRow(editedItem, true); RadGrid1.DataSource = null; } } catch (Exception ex) { RadGrid1.Controls.Add(new LiteralControl("Unable to update Shippers. Reason: " + ex.Message)); a.Canceled = true; } }; RadGrid1.InsertCommand += (s, a) => { //Get the GridEditableItem of the RadGrid GridEditableItem newItem = a.Item as GridEditableItem; string Name = (newItem["Name"].Controls[0] as TextBox).Text; try { if (this.Validate(Name, false, newItem)) { if (this.Validate(Name, true, newItem)) { this.UpdateAddRow(newItem, false); RadGrid1.DataSource = null; } } } catch (Exception ex) { RadGrid1.Controls.Add(new LiteralControl("Unable to insert Shipper. Reason: " + ex.Message)); a.Canceled = true; } }; RadGrid1.DeleteCommand += (s, a) => { //Get the GridDataItem of the RadGrid GridDataItem item = (GridDataItem)a.Item; //Get the primary key value using the DataKeyValue. string name = item.OwnerTableView.DataKeyValues[item.ItemIndex]["Name"].ToString(); try { _config.Values.Rows.Remove(_config.Values.AsEnumerable() .AsQueryable() .Where(String.Format("(it[\"Name\"].ToString().ToUpper().Contains(\"{0}\".ToUpper()))", name)) .CopyToDataTable().Rows[0]); RadGrid1.DataSource = null; } catch (Exception ex) { RadGrid1.Controls.Add(new LiteralControl("Unable to delete Entry. Reason: " + ex.Message)); a.Canceled = true; } }; } protected void RadGrid1_ItemCommand(object sender, GridCommandEventArgs e) { if (e.CommandName == "Filter" || e.CommandName == "Sort") { RadGrid1.DataSource = null; } } private DataTable GetEntities(string filterExpression, string sortExpression) { foreach (GridColumn col in RadGrid1.Columns) { col.AutoPostBackOnFilter = true; } var dt = _config.Values; if (!String.IsNullOrEmpty(filterExpression)) { IQueryable<DataRow> rows = dt.AsEnumerable() .AsQueryable() .Where(filterExpression); if (rows.Count<DataRow>() > 0) { dt = rows.CopyToDataTable(); } else { dt.Clear(); } } if (!String.IsNullOrEmpty(sortExpression)) { IQueryable<DataRow> rows = dt.AsEnumerable() .AsQueryable() .Where(sortExpression); if (rows.Count<DataRow>() > 0) { dt = rows.CopyToDataTable(); } else { dt.Clear(); } } return dt; } public void UpdateAddRow(GridEditableItem editedItem, bool update) { String[] cells = new String[_config.Values.Columns.Count]; for (int i = 1; i < _config.Values.Columns.Count; i++) { cells[i]= (editedItem[_config.Values.Columns[i].ColumnName].Controls[0] as TextBox).Text; } if (update) { string Name = editedItem.OwnerTableView.DataKeyValues[editedItem.ItemIndex]["Name"].ToString(); DataRow[] rows = _config.Values.Select(String.Format("Name = '{0}'", Name)); var row = rows[0]; for (int i = 1; i < _config.Values.Columns.Count; i++) { row[_config.Values.Columns[i].ColumnName] = cells[i]; } } else { cells[0] = (editedItem["Name"].Controls[0] as TextBox).Text; var row = _config.Values.NewRow(); for (int i = 1; i < _config.Values.Columns.Count; i++) { row[_config.Values.Columns[i].ColumnName] = cells[i]; } _config.Values.Rows.Add(row); } RadGrid1.DataSource = null; } public bool Validate(string name, bool placeholder, GridEditableItem editedItem) { bool valid = true; //if (placeholder) //{ // string pattern = ""; // foreach (TableCell item in editedItem.Cells) // { // if (System.Text.RegularExpressions.Regex.IsMatch(item.Text, pattern, System.Text.RegularExpressions.RegexOptions.IgnoreCase)) // { // if (!item.ID.Equals("Name")) // { // valid = _config.Validate(item.Text, placeholder); // } // } // } //} //else //{ // valid = _config.Validate(name, placeholder); //} return valid; } }}DataBind() and rebind() methods which works properly fine. While filling with data i refine the no. of rows based on filter condtion , provide RadGrid1.MasterTableView.FilterExpression and rebind the grid.
It works properly in web browser when i click on any column for sort but when i check this scenario in mobile browser it completely by pass the complete filter contion and reload the grid with all data and make drop down empty .
can anybody help to get rid from this error on mobile browser.
<add key="Telerik.Skin" value="Office2007"/>RadSkinManagerMain.Skin = "Office2007";<add key="Telerik.ComboBox.Skin" value="Metro" />RadSkinManager?
