I am currently manually databinding a RadGrid via server side. Although when I try to edit a record the Grid clears out, until I bind it again, then the item goes into edit mode. I'm not sure how to resolve this. Below is the code I have so far.
ASPX
C#
ASPX
<
telerik:RadAjaxLoadingPanel
ID
=
"itemsLoadingPanel"
runat
=
"server"
Skin
=
"Vista"
Transparency
=
"30"
></
telerik:RadAjaxLoadingPanel
>
<
telerik:RadAjaxPanel
ID
=
"itemsPanel"
runat
=
"server"
LoadingPanelID
=
"itemsLoadingPanel"
>
<
div
>
<
telerik:RadTextBox
ID
=
"itemSearchPSTxt"
runat
=
"server"
EmptyMessage
=
"PS #"
/>
<
telerik:RadTextBox
ID
=
"itemSearchDescriptionTxt"
runat
=
"server"
EmptyMessage
=
"Description"
/>
<
telerik:RadTextBox
ID
=
"itemSearchPartNumTxt"
runat
=
"server"
EmptyMessage
=
"Part #"
/>
<
telerik:RadButton
ID
=
"itemSearchBtn"
runat
=
"server"
Text
=
"Search"
OnClick
=
"itemSearchBtn_Click"
/>
<
asp:Label
ID
=
"itemSearchErrorlbl"
runat
=
"server"
Text
=
"*You must input a search value"
CssClass
=
"error"
Visible
=
"false"
/>
</
div
>
<
telerik:RadGrid
ID
=
"itemsRadGrid"
runat
=
"server"
AutoGenerateColumns
=
"true"
AutoGenerateEditColumn
=
"true"
AllowPaging
=
"true"
OnItemCommand
=
"itemsRadGrid_ItemCommand"
>
<
MasterTableView
CommandItemDisplay
=
"Top"
NoMasterRecordsText
=
"No Records"
EditMode
=
"PopUp"
>
<
CommandItemSettings
ShowAddNewRecordButton
=
"false"
ShowRefreshButton
=
"false"
/>
<
EditFormSettings
EditFormType
=
"Template"
PopUpSettings-Modal
=
"true"
PopUpSettings-Width
=
"720px"
CaptionFormatString
=
"Edit Item"
>
<
FormTemplate
>
<
table
>
<
tr
>
<
td
>Description:</
td
>
<
td
>Part Number:</
td
>
<
td
>Category:</
td
>
</
tr
>
<
tr
>
<
td
><
telerik:RadTextBox
ID
=
"editItemDescription"
runat
=
"server"
/></
td
>
<
td
><
telerik:RadTextBox
ID
=
"editItemPartNum"
runat
=
"server"
/></
td
>
<
td
><
telerik:RadTextBox
ID
=
"editItemCategory"
runat
=
"server"
/></
td
>
</
tr
>
<
tr
>
<
td
>Internal Account Number:</
td
>
<
td
>Status:</
td
>
<
td
></
td
>
</
tr
>
<
tr
>
<
td
><
telerik:RadTextBox
ID
=
"editItemAcctNum"
runat
=
"server"
/></
td
>
<
td
><
telerik:RadTextBox
ID
=
"editItemStatus"
runat
=
"server"
Text /></
td
>
<
td
></
td
>
</
tr
>
<
tr
>
<
td
>Expires: <
asp:DropDownList
ID
=
"editItemExpires"
runat
=
"server"
><
asp:ListItem
Text
=
"Yes"
Value
=
"1"
/><
asp:ListItem
Text
=
"No"
Value
=
"0"
/></
asp:DropDownList
></
td
>
<
td
>Serial Numbered: <
asp:DropDownList
ID
=
"editItemSerialNum"
runat
=
"server"
><
asp:ListItem
Text
=
"Yes"
Value
=
"1"
/><
asp:ListItem
Text
=
"No"
Value
=
"0"
/></
asp:DropDownList
></
td
>
<
td
>Lot Numbered: <
asp:DropDownList
ID
=
"editItemLotNum"
runat
=
"server"
><
asp:ListItem
Text
=
"Yes"
Value
=
"1"
/><
asp:ListItem
Text
=
"No"
Value
=
"0"
/></
asp:DropDownList
></
td
>
<
td
>Consigned: <
asp:DropDownList
ID
=
"editItemConsigned"
runat
=
"server"
><
asp:ListItem
Text
=
"Yes"
Value
=
"1"
/><
asp:ListItem
Text
=
"No"
Value
=
"0"
/></
asp:DropDownList
></
td
>
</
tr
>
<
tr
>
<
td
>OEM:</
td
>
<
td
>OEM ID:</
td
>
<
td
>OEM Item ID:</
td
>
</
tr
>
<
tr
>
<
td
><
telerik:RadTextBox
ID
=
"editItemOEM"
runat
=
"server"
/></
td
>
<
td
><
telerik:RadTextBox
ID
=
"editItemOEMID"
runat
=
"server"
/></
td
>
<
td
><
telerik:RadTextBox
ID
=
"editItemOEMItemID"
runat
=
"server"
/></
td
>
</
tr
>
<
tr
>
<
td
>Vendor:</
td
>
<
td
>Vendor ID:</
td
>
<
td
>Vendor Item ID:</
td
>
</
tr
>
<
tr
>
<
td
><
telerik:RadTextBox
ID
=
"editItemVendor"
runat
=
"server"
/></
td
>
<
td
><
telerik:RadTextBox
ID
=
"editItemVendorID"
runat
=
"server"
/></
td
>
<
td
><
telerik:RadTextBox
ID
=
"editItemVendorItemID"
runat
=
"server"
/></
td
>
</
tr
>
<
tr
>
<
td
>Vendor Price:</
td
>
<
td
>Price Each:</
td
>
<
td
>Cost Code:</
td
>
<
td
>Conversion Rate:</
td
>
<
td
>Unit of Measure:</
td
>
</
tr
>
<
tr
>
<
td
><
telerik:RadTextBox
ID
=
"editItemVendorPrice"
runat
=
"server"
/></
td
>
<
td
><
telerik:RadTextBox
ID
=
"editItemPriceEach"
runat
=
"server"
/></
td
>
<
td
><
telerik:RadTextBox
ID
=
"editItemCostCode"
runat
=
"server"
/></
td
>
<
td
><
telerik:RadTextBox
ID
=
"editItemCoversionRate"
runat
=
"server"
/></
td
>
<
td
><
telerik:RadTextBox
ID
=
"editItemUnitMeasure"
runat
=
"server"
/></
td
>
</
tr
>
<
tr
>
<
td
colspan
=
"4"
><
telerik:RadButton
ID
=
"editItemUpdateBtn"
runat
=
"server"
Text
=
"Update"
/></
td
>
</
tr
>
</
table
>
</
FormTemplate
>
</
EditFormSettings
>
</
MasterTableView
>
</
telerik:RadGrid
>
</
telerik:RadAjaxPanel
>
C#
protected
void
itemSearchBtn_Click (
object
sender, EventArgs e)
{
itemSearchErrorlbl.Visible =
false
;
string
PartNum = itemSearchPartNumTxt.Text;
string
Description = itemSearchDescriptionTxt.Text;
string
PSNum = itemSearchPSTxt.Text;
string
whereStatement =
""
;
if
(PartNum !=
""
|| Description !=
""
|| PSNum !=
""
)
{
if
(PartNum !=
""
)
{
whereStatement =
"items.PartNumber = "
+
"'"
+ PartNum +
"'"
;
}
if
(Description !=
""
)
{
// See if there is already a statement to see if we need to add AND
if
(whereStatement ==
""
)
{
whereStatement =
"items.Description like "
+
"'%"
+ Description +
"%'"
;
}
else
{
whereStatement = whereStatement +
" AND items.Description like "
+
"'%"
+ Description +
"%'"
;
}
}
if
(PSNum !=
""
)
{
if
(whereStatement ==
""
)
{
whereStatement =
"items.CrossRefID = "
+
"'"
+ PSNum +
"'"
;
}
else
{
whereStatement = whereStatement +
" AND items.CrossRefID = "
+
"'"
+ PSNum +
"'"
;
}
}
itemsRadGrid.DataSource = GetDataTable(
"SELECT ItemParValues.ID, Min, Max, Locations.Name, ItemID FROM ItemParValues INNER JOIN items on ItemParValues.ItemID = items.ID INNER JOIN Locations on Locations.ID = ItemParValues.LocationID WHERE "
+ whereStatement);
itemsRadGrid.DataBind();
}
else
// Display error
itemSearchErrorlbl.Visible =
true
;
}
protected
void
itemsRadGrid_ItemCommand(
object
sender, GridCommandEventArgs e)
{
if
(e.CommandName == RadGrid.EditCommandName)
{
}
}
public
DataTable GetDataTable(
string
queryString)
{
using
(SqlCommand cmd =
new
SqlCommand(queryString, connection))
{
SqlDataAdapter da =
new
SqlDataAdapter(cmd);
DataTable dt =
new
DataTable();
da.Fill(dt);
return
dt;
}
}