or
| <telerik:RadGrid ID="grdItems" runat="server" GridLines="None" Width="100%"> |
| <ExportSettings> |
| <Pdf PageWidth="8.5in" PageHeight="11in" PageTopMargin="" PageBottomMargin="" PageLeftMargin="" |
| PageRightMargin="" PageHeaderMargin="" PageFooterMargin=""></Pdf> |
| </ExportSettings> |
| <MasterTableView DataMember="Master" AutoGenerateColumns="False" HierarchyDefaultExpanded="true" |
| ExpandCollapseColumn-CollapseImageUrl="~/images/trans.gif"> |
| <RowIndicatorColumn Visible="False"> |
| <HeaderStyle Width="20px"></HeaderStyle> |
| </RowIndicatorColumn> |
| <ExpandCollapseColumn Visible="False" Resizable="False"> |
| <HeaderStyle Width="20px"></HeaderStyle> |
| </ExpandCollapseColumn> |
| <Columns> |
| <telerik:GridBoundColumn UniqueName="ID" DataField="ID" Visible="false"> |
| </telerik:GridBoundColumn> |
| <telerik:GridTemplateColumn HeaderText="Package"> |
| <ItemTemplate> |
| <asp:DropDownList ID="ddlPackage" runat="server"> |
| </asp:DropDownList> |
| <asp:Label ID="lblOrderItemId" runat="server" Text='<%# Eval("ID") %>' Visible="false"></asp:Label> |
| </ItemTemplate> |
| </telerik:GridTemplateColumn> |
| <telerik:GridTemplateColumn HeaderText="SKU"> |
| <ItemTemplate> |
| <asp:HyperLink ID="hypProductID" runat="Server" Text='<%# Eval("ProductId") %>' |
| NavigateUrl='<%# "~/Inventory/Product.aspx?id=" & eval("ProductId") %>'></asp:HyperLink> |
| </ItemTemplate> |
| </telerik:GridTemplateColumn> |
| <telerik:GridTemplateColumn HeaderText="Reference"> |
| <ItemTemplate> |
| <asp:HyperLink runat="Server" ID="hypeBayItemID" Target="_blank" Text='<%#Eval("eBayItemID")%>'></asp:HyperLink> |
| </ItemTemplate> |
| </telerik:GridTemplateColumn> |
| <telerik:GridTemplateColumn HeaderText="Original Reference" Visible="false"> |
| <ItemTemplate> |
| </ItemTemplate> |
| </telerik:GridTemplateColumn> |
| <telerik:GridTemplateColumn HeaderText="Item"> |
| <ItemTemplate> |
| <%#Eval("DisplayName")%> |
| </ItemTemplate> |
| </telerik:GridTemplateColumn> |
| <telerik:GridTemplateColumn HeaderText="Unit Price" Visible="false"> |
| <ItemTemplate> |
| <%#FormatCurrency(Eval("AdjustedSitePrice"), 2)%> |
| </ItemTemplate> |
| </telerik:GridTemplateColumn> |
| <telerik:GridTemplateColumn HeaderText="Qty"> |
| <ItemTemplate> |
| <%#Eval("Qty")%> |
| </ItemTemplate> |
| </telerik:GridTemplateColumn> |
| <telerik:GridTemplateColumn HeaderText="Subtotal" Visible="false"> |
| <ItemTemplate> |
| <%#FormatCurrency( Eval("Qty") * Eval("AdjustedSitePrice"), 2)%> |
| </ItemTemplate> |
| </telerik:GridTemplateColumn> |
| <telerik:GridTemplateColumn HeaderText="Notes" UniqueName="Notes"> |
| <ItemTemplate> |
| <%#Eval("Notes")%> |
| </ItemTemplate> |
| </telerik:GridTemplateColumn> |
| <telerik:GridTemplateColumn HeaderText="" Visible="false"> |
| <ItemTemplate> |
| <asp:HyperLink ToolTip="Drop Shipped" ID="hypDroppedShipped" ImageUrl="~/images/dropShipped.jpg" |
| runat="server" NavigateUrl='<%# "Orders_DropShip.aspx?id=" & Eval("OrderID") %>'></asp:HyperLink> |
| </ItemTemplate> |
| </telerik:GridTemplateColumn> |
| </Columns> |
| <DetailTables> |
| <telerik:GridTableView runat="server" DataMember="ChildProducts" AutoGenerateColumns="False" |
| HierarchyDefaultExpanded="true" ExpandCollapseColumn-CollapseImageUrl="~/images/trans.gif" |
| Width="100%"> |
| <Columns> |
| <telerik:GridBoundColumn UniqueName="OrderItemId" DataField="OrderItemId" Visible="false"> |
| </telerik:GridBoundColumn> |
| <telerik:GridBoundColumn UniqueName="ID" DataField="ID" Visible="false"> |
| </telerik:GridBoundColumn> |
| <telerik:GridTemplateColumn HeaderText="Package"> |
| <ItemTemplate> |
| <asp:DropDownList ID="ddlPackage" runat="server"> |
| </asp:DropDownList> |
| <asp:Label ID="lblBundleOrderItemId" runat="server" Visible="true"></asp:Label> |
| <asp:Label ID="lblProductID" runat="server" Text='<%# Eval("ProductID") %>' Visible="false"></asp:Label> |
| </ItemTemplate> |
| </telerik:GridTemplateColumn> |
| <telerik:GridTemplateColumn HeaderText="SKU"> |
| <ItemTemplate> |
| <asp:HyperLink ID="hypProductID" runat="Server" Text='<%# Eval("ProductId") %>' |
| NavigateUrl='<%# "~/Inventory/Product.aspx?id=" & eval("ProductId") %>'></asp:HyperLink> |
| </ItemTemplate> |
| </telerik:GridTemplateColumn> |
| <telerik:GridTemplateColumn HeaderText="Item"> |
| <ItemTemplate> |
| <asp:Label ID="lblPRoductName" runat="Server"></asp:Label> |
| </ItemTemplate> |
| </telerik:GridTemplateColumn> |
| <telerik:GridTemplateColumn HeaderText="Qty"> |
| <ItemTemplate> |
| <%#Eval("Qty")%> |
| </ItemTemplate> |
| </telerik:GridTemplateColumn> |
| </Columns> |
| </telerik:GridTableView> |
| </DetailTables> |
| </MasterTableView> |
| </telerik:RadGrid> |
| Private Sub btnSave_Click(ByVal sender As Object, ByVal e As System.Web.UI.ImageClickEventArgs) Handles btnSave.Click |
| For Each item As Telerik.Web.UI.GridDataItem In Me.grdItems.Items |
| Dim lblOrderItemId As Label = CType(item.FindControl("lblOrderItemId"), Label) |
| Dim ddlPackage As DropDownList = CType(item.FindControl("ddlPackage"), DropDownList) |
| If lblOrderItemId IsNot Nothing Then |
| 'Its main order item |
| Dim oi As Orders.OrderItem = OrderServices.OrderItems.GetByID(CInt(lblOrderItemId.Text)) |
| oi.PackageID = ddlPackage.SelectedValue |
| OrderServices.OrderItems.Update(oi) |
| 'Parse child items |
| Dim grdTable As GridTableView = CType(CType(item.ChildItem, GridNestedViewItem).Cells(1).Controls(0), GridTableView) |
| For Each childItem As Telerik.Web.UI.GridDataItem In grdTable.Items |
| Dim lblBundleOrderItemId As Label = CType(childItem.FindControl("lblBundleOrderItemId"), Label) |
| Dim lblProductID As Label = CType(childItem.FindControl("lblProductID"), Label) |
| ddlPackage = CType(childItem.FindControl("ddlPackage"), DropDownList) |
| Next |
| 'ElseIf lblBundleOrderItemId IsNot Nothing And lblOrderItemId Is Nothing Then |
| ' 'Its bundle item |
| End If |
| Next |
| Session("PackagesMessage") = "Order Shipping Preferences saved." |
| Response.Redirect(Request.Url.PathAndQuery) |
| End Sub |
The problem is that RadPane--rpLeft which contain a usercontrol is all blank when I make a search.The
strange thing is that I click the RadSplitBar to collapse this pane and then click the RadSplitBar again to expand.
All content in this Pane is there.I don't know what cause this problem. I gusee it maybe the usercontrol in this pane.
Could someone give me some idea? I will appreciate it.
<telerik:RadSplitter ID="rspSplitter" runat="server" ResizeWithBrowserWindow="true" VisibleDuringInit="false" Width="100%" Height="100%"> <telerik:RadPane ID="rpLeft" runat="server" Width="20%" Scrolling="None" Collapsed="true"> <uc4:ajaxoperatorleftpart id="AjaxPart1" runat="server" /> <iframe id="frameMain" src="../../Default.aspx" scrolling="no" frameborder="0" width="100%" height="220"></iframe> </telerik:RadPane> <telerik:RadSplitBar ID="RadSplitBar1" runat="server" CollapseMode="Forward" /> <telerik:RadPane ID="rpRight" runat="server" Scrolling="None" Width="80%"> <table border="0" cellpadding="0" cellspacing="0" width="100%"> <tr> <td valign="top"> <div> <table class="table" border="0" cellpadding="0" cellspacing="0" width="100%" style="margin-top: 2px; margin-bottom: 2px;"> <tr> <td> <table width="100%" border="0" cellpadding="0" cellspacing="0"> <tr> <td align="right"> KeyWords: </td> <td style="width: 220px;"> <telerik:RadTextBox ID="rtxtKeyStr" runat="server" EmptyMessage="输入关键字" Width="220px"> </telerik:RadTextBox> </td> <td style="width: 110px;" align="right"> IsDirectSolution: </td> <td> <asp:RadioButtonList ID="rblDirectSolutionSimple" runat="server" CellPadding="0" CellSpacing="0" RepeatDirection="Horizontal" RepeatLayout="Table"> <asp:ListItem Selected="True" Value="">All</asp:ListItem> <asp:ListItem Value="1">Y</asp:ListItem> <asp:ListItem Value="0">N</asp:ListItem> </asp:RadioButtonList> </td> <td style="width: 80px;"> <asp:ImageButton ID="ibtnSimpleSearch" runat="server" ImageUrl="~/App_Themes/Default/images/search.gif" OnClick="ibtnSimpleSearch_Click" Style="height: 22px" /> </td> </tr> </table> </td> </tr> </table> <telerik:RadGrid ID="RadGrid1" runat="server"> <MasterTableView Name="requestList" Width="100%"> <Columns> <telerik:GridTemplateColumn HeaderText="request" UniqueName="column" SortExpression="ID"> <ItemTemplate> <a href="javascript:void(null);" onclick="openRequestInfo('<%#Eval("ID") %>')"> <%#Eval("ID") %></a> </ItemTemplate> <HeaderStyle Width="80" /> </telerik:GridTemplateColumn> <telerik:GridBoundColumn HeaderText="Name" UniqueName="column1" DataField="UserAccount"> <HeaderStyle Width="80px" /> </telerik:GridBoundColumn> <telerik:GridBoundColumn HeaderText="Department" UniqueName="column2" DataField="Department"> <HeaderStyle Width="90px" /> </telerik:GridBoundColumn> <telerik:GridBoundColumn HeaderText="Contract" UniqueName="column3" DataField="Telephone"> <HeaderStyle Width="80px" /> </telerik:GridBoundColumn> <telerik:GridTemplateColumn HeaderText="Content" UniqueName="column4"> <ItemTemplate> <asp:Label ID="lblContent" runat="server" Text='<%#Eval("Content") %>' ToolTip='<%#Eval("Content") %>'></asp:Label> </ItemTemplate> <HeaderStyle Wrap="false" /> <ItemStyle Wrap="false" /> </telerik:GridTemplateColumn> </Columns> <HeaderStyle Wrap="false" /> </MasterTableView> <ClientSettings> <Selecting AllowRowSelect="true" /> <Resizing AllowColumnResize="True" EnableRealTimeResize="true" ClipCellContentOnResize="true" /> </ClientSettings> </telerik:RadGrid> </div> </td> </tr> </table> </telerik:RadPane> </telerik:RadSplitter><telerik:RadScriptBlock ID="radScriptBlock1" runat="server"><script type="text/javascript">function onClientValueChanging(sender, args) {
if(!isSliding) return; //OADate origin is midnight, 30 December 1899 var date = new Date('December 30,1899 00:00:00'); date.setDate(date.getDate()+parseInt(args.get_newValue())); var tooltip = $find("<%= radToolTipSlider.ClientID %>"); resetToolTipLocation(tooltip); var day = date.getDate(); var month = date.getMonth() + 1; var year = date.getFullYear(); tooltip.set_text(day+'.'+month+'.'+year); // finnish-localized date format
}var isSliding = false;function onClientSlideStart(sender, args) { isSliding = true; var tooltip = $find("<%= radToolTipSlider.ClientID %>"); showRadToolTip(tooltip, sender); }function onClientSlide(sender, args) { var tooltip = $find("<%= radToolTipSlider.ClientID %>"); showRadToolTip(tooltip, sender); }function onClientSlideEnd(sender, args) { isSliding = false; var tooltip = $find("<%= radToolTipSlider.ClientID %>"); tooltip.hide(); }function showRadToolTip(tooltip, slider) { var activeHandle = slider.get_activeHandle(); if(!activeHandle) return; tooltip.set_targetControl(activeHandle); resetToolTipLocation(tooltip); }function resetToolTipLocation(tooltip) { if (!tooltip.isVisible()) tooltip.show(); else tooltip.updateLocation(); }</script></telerik:RadScriptBlock><telerik:RadAjaxManager ID="radAjaxManager" runat="server"><AjaxSettings> <telerik:AjaxSetting AjaxControlID="radSliderDates"> <UpdatedControls> <telerik:AjaxUpdatedControl ControlID="lblSliderStartDate" UpdatePanelRenderMode="Inline" /> <telerik:AjaxUpdatedControl ControlID="lblSliderEndDate" UpdatePanelRenderMode="Inline" /> </UpdatedControls> </telerik:AjaxSetting></AjaxSettings></telerik:RadAjaxManager><telerik:RadAjaxLoadingPanel ID="radAjaxLoadingPanel1" runat="server" /><telerik:RadToolTip ID="radToolTipSlider" runat="server" Position="TopCenter" OffsetY="3" ShowCallout="false" Height="20px" ShowEvent="FromCode" HideEvent="FromCode"></telerik:RadToolTip><div> <fieldset style="width:700px"> <legend>Slider</legend> <table border="0" cellpadding="2" cellspacing="0"> <tr> <td><asp:Label ID="lblSliderStartDate" runat="server" /></td> <td> <telerik:RadSlider runat="server" ID="radSliderDates" IsSelectionRangeEnabled="true" Width="370" AutoPostBack="true" ShowDecreaseHandle="false" ShowIncreaseHandle="false" OnClientValueChanging="onClientValueChanging" OnClientSlideStart="onClientSlideStart" OnClientSlideEnd="onClientSlideEnd" OnClientSlide="onClientSlide" /> </td> <td><asp:Label ID="lblSliderEndDate" runat="server" /></td> </tr> </table> </fieldset></div>Private Sub InitDates() ' dtStart and dtEnd are fetched from db Dim dtStart As Date = CDate(getStartDate()).ToShortDateString Dim dtEnd As Date = CDate(getEndDate()).ToShortDateString lblSliderStartDate.Text = dtStart.ToShortDateString lblSliderEndDate.Text = dtEnd.ToShortDateString radSliderDates.MinimumValue = CInt(dtStart.ToOADate) radSliderDates.MaximumValue = CInt(dtEnd.ToOADate) radSliderDates.SelectionStart = CInt(dtStart.ToOADate) radSliderDates.SelectionEnd = CInt(dtEnd.ToOADate) radSliderDates.SmallChange = 1 End SubProtected Sub radSliderDates_ValueChanged(ByVal sender As Object, ByVal e As System.EventArgs) Handles radSliderDates.ValueChanged Dim dtStart As Date = Date.FromOADate(radSliderDates.SelectionStart.ToString) Dim dtEnd As Date = Date.FromOADate(radSliderDates.SelectionEnd.ToString) lblSliderStartDate.Text = dtStart.ToShortDateString lblSliderEndDate.Text = dtEnd.ToShortDateString End Sub<%# DataBinder.Eval( Container, "DataItem.MyFieldName" ) %>
<telerik:RadGrid ID="RadGrid1" runat="server" GridLines="None" AllowPaging="True" CssClass="RadGrid" AllowSorting="True" AutoGenerateColumns="False" ShowStatusBar="True" OnPreRender="RadGrid1_PreRender" OnNeedDataSource="RadGrid1_NeedDataSource" OnUpdateCommand="RadGrid1_UpdateCommand" OnInsertCommand="RadGrid1_InsertCommand" OnDeleteCommand="RadGrid1_DeleteCommand" AllowFilteringByColumn="True" Skin="WebBlue" ondatabound="RadGrid1_DataBound" onitemdatabound="RadGrid1_ItemDataBound" DataSourceID="odsQuestions" ondetailtabledatabind="RadGrid1_DetailTableDataBind" oneditcommand="RadGrid1_EditCommand" onitemcommand="RadGrid1_ItemCommand" onitemevent="RadGrid1_ItemEvent" > <HeaderContextMenu EnableRoundedCorners="True"> </HeaderContextMenu> <PagerStyle AlwaysVisible="True" ShowPagerText="False" /> <MasterTableView EditMode="PopUp" Width="100%" CommandItemDisplay="Top" DataKeyNames="QuestionIDunique" DataSourceID="odsQuestions" ShowHeadersWhenNoRecords="false"> <CommandItemSettings AddNewRecordText="הוסף חדש" RefreshText="רענן" /> <NoRecordsTemplate>אין נתונים להצגה</NoRecordsTemplate> <Columns> <telerik:GridBoundColumn UniqueName="QuestionIDunique" HeaderText="מס יחודי" DataField="QuestionIDunique" DataType="System.Int32" ReadOnly="True" SortExpression="QuestionIDunique"> </telerik:GridBoundColumn> <telerik:GridBoundColumn UniqueName="SerialQuestion" HeaderText="מס סידורי" DataField="SerialQuestion" DataType="System.Decimal" SortExpression="SerialQuestion"> </telerik:GridBoundColumn> <telerik:GridBoundColumn UniqueName="QuestionOfQuestionnaire" HeaderText="נוסח השאלה בשאלון" DataField="QuestionOfQuestionnaire" SortExpression="QuestionOfQuestionnaire"> </telerik:GridBoundColumn> <telerik:GridBoundColumn UniqueName="QuestionID" HeaderText="מס שאלה" DataField="QuestionID" SortExpression="QuestionID"> </telerik:GridBoundColumn> <telerik:GridEditCommandColumn CancelText="בטל" EditText="ערוך" InsertText="הוסף" UpdateText="עדכן"> </telerik:GridEditCommandColumn> </Columns> <EditFormSettings CaptionDataField="QuestionIDunique" CaptionFormatString="edit: {0} " UserControlName="UC/UCQuestionsDetails.ascx" EditFormType="WebUserControl" PopUpSettings-Width="900px" PopUpSettings-Height="300px"> <EditColumn UniqueName="EditCommandColumn1"> </EditColumn> <PopUpSettings Height="300px" Width="900px" modal="True"></PopUpSettings> </EditFormSettings> <PagerStyle AlwaysVisible="True" ShowPagerText="false"></PagerStyle> </MasterTableView> </telerik:RadGrid>
<telerik:RadPanelBar ExpandMode="SingleExpandedItem" runat="server" id="RadPanelBar1" dir="rtl" style="float: right;" Height="300px" Width="900px"> <Items> <telerik:RadPanelItem Text="header1" Expanded="True" PreventCollapse="True" Selected="True"> <Items> <telerik:RadPanelItem > <ItemTemplate> <div id="divQuestionDetails"> <asp:FormView ID="fvQuestionDetails" runat="server" DataSourceID="odsQuestionDetails" DefaultMode="Edit"> <EditItemTemplate> <table dir="rtl"> <tr> <td> <table><tr> <td> QuestionnaireId</td> <td><asp:TextBox ID="txtQuestionnaireId" runat="server" Enabled="false" Text='<%# Bind("QuestionnaireID" ) %>'></asp:TextBox></td> </tr></table> </td> <td>Hi,
I am implementing a multicolumn radcombo and I need to access indiviual column values. I saw from the demo that this can be acheived by setting attributes. and this I am trying to do in ItemDataBound event. But in ItemDatabound event e.Item.DataItem is null, Please have a look at the below code and let me know what could be the issue. The data is getting beinded to the drodown, but datatitem is null
ASPX CODe
<telerik:RadComboBox ID="RadComboBox1" runat="server" Width="150px" HighlightTemplatedItems="true" CssClass="cmb_borderstyle" OnClientSelectedIndexChanged="onClientSelectedIndexChanged" DropDownWidth="200px" EnableEmbeddedSkins="false" Skin="NextGen" CausesValidation="false" OnItemDataBound="RadComboBox1_ItemDataBound"> <CollapseAnimation Type="OutQuint" Duration="200"></CollapseAnimation> <ItemTemplate> <div class="cmb_ltFlt" style="width:100%"> <div class="cmb_rdFnt cmb_ltFlt"> <%# DataBinder.Eval(Container.DataItem, "paymentTypeDesc") %>Item1</div> <div class="cmb_rdFnt cmb_ltFlt cmb_sp20"> <%# DataBinder.Eval(Container.DataItem, "delvOptionDesc")%>Row1 Col2</div> <div class="cmb_rdFnt cmb_ltFlt cmb_sp20"> <%# DataBinder.Eval(Container.DataItem, "serviceFQN") %>Row1 Col3</div> </div> </ItemTemplate> </telerik:RadComboBox>
C# Code
public class PaymentSelectionData
{
public string paymentTypeDesc { get; set; }
public string delvOptionDesc { get; set; }
public string serviceFQN { get; set; }
public string refVal { get; set; }
}
//Below logic is implemented in some method and called form PageLoad
List<PaymentSelectionData> lstPmtSel = new List<PaymentSelectionData>();
for (int i = 1; i <= 5; i++)
{
pmtSelData = new PaymentSelectionData();
pmtSelData.paymentTypeDesc = "PaymentTypeDesc" + i.ToString();
pmtSelData.delvOptionDesc = "DelvOption" + i.ToString();
pmtSelData.serviceFQN = "ServiceFQN" + i.ToString();
pmtSelData.refVal = pmtSelData.paymentTypeDesc + "#" + pmtSelData.delvOptionDesc + "#" + pmtSelData.serviceFQN;
lstPmtSel.Add(pmtSelData);
}
RadComboBox1.DataValueField = pmtSelData.refVal;
RadComboBox1.DataTextField = "paymentTypeDesc";
RadComboBox1.DataSource = lstPmtSel;
RadComboBox1.DataBind();
protected void RadComboBox1_ItemDataBound(object sender, RadComboBoxItemEventArgs e)
{
//row is null
System.Data.DataRowView row = e.Item.DataItem as System.Data.DataRowView;
}
public
class PaymentSelectionData
{
public string paymentTypeDesc { get; set; }
public string delvOptionDesc { get; set; }
public string serviceFQN { get; set; }
public string refVal { get; set; }
}