I am trying to add the radtooltip into an item template of a dynamically created table. I have the follwing code
| Public Sub InstantiateIn(ByVal container As System.Web.UI.Control) Implements ITemplate.InstantiateIn |
| gridLabel = New Label() |
| AddHandler gridLabel.DataBinding, AddressOf gridLabel_DataBinding |
| gridCheck = New CheckBox() |
| AddHandler gridCheck.DataBinding, AddressOf GridCheck_DataBinding |
| gridCheck.Enabled = True |
| container.Controls.Add(gridCheck) |
| container.Controls.Add(gridLabel) |
| End Sub |
| Sub GridCheck_DataBinding(ByVal sender As Object, ByVal e As EventArgs) |
| Dim cBox As CheckBox = DirectCast(sender, CheckBox) |
| Dim container As GridDataItem = DirectCast(cBox.NamingContainer, GridDataItem) |
| If DirectCast(container.DataItem, DataRowView)("ContractObjectiveID").ToString <> "0" Then |
| cBox.Checked = True |
| Else |
| cBox.Checked = False |
| End If |
| End Sub |
| Public Sub gridLabel_DataBinding(ByVal sender As Object, ByVal e As EventArgs) |
| Dim l As Label = DirectCast(sender, Label) |
| Dim container As GridDataItem = DirectCast(l.NamingContainer, GridDataItem) |
| l.ID = "Label1" |
| l.Text = (DirectCast(container.DataItem, DataRowView))("ObjectiveCode").ToString() |
| Dim t As Telerik.Web.UI.RadToolTip = New Telerik.Web.UI.RadToolTip |
| t.Text = (DirectCast(container.DataItem, DataRowView))("Description").ToString() |
| t.Position = ToolTipPosition.MiddleRight |
| t.RelativeTo = ToolTipRelativeDisplay.Element |
| t.TargetControlID = l.ID |
| End Sub |
I do not get an error but at the same time I don not get the tooltip to show. I need to be able to change the grid based on a field in the database. I have the grid created but need to add the tooltip. Is this possible?
| <rad:RadGrid id="radPOS" AutoGenerateColumns="false" |
| AllowPaging="true" |
| Skin="WebBlue" |
| GridLines="Both" |
| OnDetailTableDataBind="RadPOS_DetailTableDataBind" runat="server" |
| Width="970px"> |
| <MasterTableView DataKeyNames="PurchaseOrderId" |
| HierarchyLoadMode="ServerOnDemand"> |
| <detailtables> |
| <rad:GridTableView runat="server" ClientDataKeyNames="PurchaseOrderID" DataKeyNames="PurchaseOrderID" HierarchyLoadMode="Client" |
| DataSourceID="SQLDataSource2" AutoGenerateColumns="false"> |
| <ParentTableRelation> |
| <rad:GridRelationFields DetailKeyField="PurchaseOrderID" MasterKeyField="PurchaseOrderID" /> |
| </ParentTableRelation> |
| <Columns> |
| <rad:GridBoundColumn DataField="InventoryItem" HeaderText="Item" |
| UniqueName="InventoryItem"> |
| </rad:GridBoundColumn> |
| <rad:GridBoundColumn DataField="Description" HeaderText="Description" |
| UniqueName="Description"> |
| </rad:GridBoundColumn> |
| <rad:GridBoundColumn DataField="VendorItemNumber" HeaderText="Vendor Part#" |
| UniqueName="VendorItemNumber"> |
| </rad:GridBoundColumn> |
| <rad:GridBoundColumn DataField="Quantity" HeaderText="Quantity" |
| UniqueName="column1"> |
| </rad:GridBoundColumn> |
| <rad:GridBoundColumn DataField="UoM" HeaderText="Units" |
| UniqueName="Uom"> |
| </rad:GridBoundColumn> |
| <rad:GridBoundColumn DataField="Price" DataFormatString="{0:c}" |
| HeaderText="Price" UniqueName="column"> |
| </rad:GridBoundColumn> |
| <rad:GridTemplateColumn HeaderText="Line Total"> |
| <ItemTemplate> |
| <asp:Label ID="lblPrice" runat="server" Text='<%# string.format("{0:c}",databinder.eval(container,"dataitem.quantity") * databinder.eval(container,"Dataitem.price")) %>'></asp:Label> |
| </ItemTemplate> |
| </rad:GridTemplateColumn> |
| </Columns> |
| </rad:GridTableView> |
| </detailtables> |
| <RowIndicatorColumn> |
| <HeaderStyle Width="20px"></HeaderStyle> |
| </RowIndicatorColumn> |
| <ExpandCollapseColumn visible="True"> |
| <HeaderStyle Width="20px"></HeaderStyle> |
| </ExpandCollapseColumn> |
| <Columns> |
| <rad:GridBoundColumn DataField="PurchaseOrderID" DataType="System.Int64" |
| HeaderText="PurchaseOrderID" ReadOnly="True" SortExpression="PurchaseOrderID" |
| UniqueName="PurchaseOrderID" Visible="False"> |
| </rad:GridBoundColumn> |
| <rad:GridTemplateColumn ItemStyle-Width="40px" HeaderStyle-Width="40px"> |
| <ItemTemplate> |
| <a href='<%# "viewpo.aspx?PurchaseOrder=" & databinder.eval(container,"dataitem.PurchaseOrderID") %>' onclick="javascript:window.print();" target="_blank" ><img src="images/printer.png" border="0" alt="Print This PO" /></a> |
| </ItemTemplate> |
| </rad:GridTemplateColumn> |
| <rad:GridTemplateColumn ItemStyle-Width="35px" HeaderStyle-Width="35px"> |
| <ItemTemplate> |
| <a href='javascript:OpenWindow(<%# databinder.eval(container,"dataitem.PurchaseOrderID")%>)'><img src="images/basket_go.png" border="0" alt="Receive this PO" /></a> |
| </ItemTemplate> |
| </rad:GridTemplateColumn> |
| <rad:GridTemplateColumn ItemStyle-Width="35px" HeaderStyle-Width="35px"> |
| <ItemTemplate> |
| <a href='<%#"FileUpload.aspx?&PO=" & databinder.eval(container,"dataitem.PurchaseOrderID") & "&height=300&width=300&TB_iframe=true"%>' class="thickbox" ><img alt="files" border="0" src="images/folder_explore.png"></a> |
| </ItemTemplate> |
| </rad:GridTemplateColumn> |
| <rad:GridTemplateColumn ItemStyle-Width="35px" HeaderStyle-Width="35px"> |
| <ItemTemplate> |
| <a href='<%#"EnterEmail.htm?&PO=" & databinder.eval(container,"dataitem.PurchaseOrderID") & "&height=300&width=300&TB_iframe=true"%>' class="thickbox" ><img alt="email" border="0" src="images/email.png"></a> |
| </ItemTemplate> |
| </rad:GridTemplateColumn> |
| <rad:GridTemplateColumn ItemStyle-Width="35px" HeaderStyle-Width="35px"> |
| <ItemTemplate> |
| <a href='<%#"EnterFax.htm?&PO=" & databinder.eval(container,"dataitem.PurchaseOrderID") & "&height=300&width=300&TB_iframe=true"%>' class="thickbox" ><img alt="fax" border="0" src="images/page_white_go.png"></a> |
| </ItemTemplate> |
| </rad:GridTemplateColumn> |
| <rad:GridTemplateColumn HeaderText="PO Number" SortExpression="PONumber"> |
| <ItemTemplate> |
| <asp:HyperLink id="lnkPo" runat="server" NavigateUrl='<%# "newpurchaseorder.aspx?mode=edit&PO=" & databinder.eval(container,"dataitem.PurchaseOrderID")%>' Target="_blank" Text='<%# bind("PONumber") %>'></asp:HyperLink> |
| </ItemTemplate> |
| </rad:GridTemplateColumn> |
| <rad:GridBoundColumn DataField="OrderTotal" DataType="System.Double" |
| HeaderText="Order Total" ReadOnly="True" SortExpression="OrderTotal" |
| UniqueName="OrderTotal" DataFormatString="{0:c}"> |
| </rad:GridBoundColumn> |
| <rad:GridBoundColumn DataField="RequisitionedBy" |
| HeaderText="RequisitionedBy" SortExpression="RequisitionedBy" |
| UniqueName="RequisitionedBy"> |
| </rad:GridBoundColumn> |
| <rad:GridBoundColumn DataField="PurchaseOrderDate" |
| DataType="System.DateTime" HeaderText="PO Date" |
| SortExpression="PurchaseOrderDate" UniqueName="PurchaseOrderDate" DataFormatString="{0:d}"> |
| </rad:GridBoundColumn> |
| <rad:GridBoundColumn DataField="OrderStatus" HeaderText="OrderStatus" |
| SortExpression="OrderStatus" UniqueName="OrderStatus"> |
| </rad:GridBoundColumn> |
| <rad:GridBoundColumn DataField="LastUpdated" DataType="System.DateTime" |
| HeaderText="Last Updated" SortExpression="LastUpdated" UniqueName="LastUpdated"> |
| </rad:GridBoundColumn> |
| </Columns> |
| </MasterTableView> |
| <ClientSettings AllowGroupExpandCollapse="True" > |
| <Selecting AllowRowSelect="true" /> |
| </ClientSettings> |
| </rad:RadGrid></ContentTemplate></asp:UpdatePanel> |
| <asp:SqlDataSource ID="SqlDataSource2" runat="server" |
| ConnectionString="<%$ ConnectionStrings:BannerSmokedFishConnectionString2 %>" |
| SelectCommand="SELECT * FROM [Purchase_Order_Items] WHERE ([PurchaseOrderID] = @PurchaseOrderID)"> |
| <SelectParameters> |
| <asp:SessionParameter Name="PurchaseOrderID" SessionField="PurchaseOrderID" Type="Int64" /> |
| </SelectParameters> |
| </asp:SqlDataSource> |
| <rad:RadAjaxManager runat="server"> |
| <ajaxsettings> |
| <rad:AjaxSetting AjaxControlID="SqlDataSource1"> |
| <updatedcontrols> |
| <rad:AjaxUpdatedControl ControlID="radPOS" /> |
| </updatedcontrols> |
| </rad:AjaxSetting> |
| <rad:AjaxSetting AjaxControlID="radPOS"> |
| </rad:AjaxSetting> |
| <rad:AjaxSetting AjaxControlID="SqlDataSource2"> |
| </rad:AjaxSetting> |
| </ajaxsettings> |
| </rad:RadAjaxManager> |
<
telerik:RadScriptBlock ID="RadScriptBlock1" runat="server">
<script type="text/javascript" language="javascript">
function RefreshGrid() {
$find("<%= RadAjaxManager.GetCurrent(Page).ClientID %>").ajaxRequest("Rebind");
}
</script>
</telerik:RadScriptBlock>
that is the javascript that does the post backs.
here is the code for the textbox
txtOrgName.Attributes.Add("onkeyup", "RefreshGrid()");
now i also have this in the page load event
RadAjaxManager ajaxManger = RadAjaxManager.GetCurrent(Page);
if (ajaxManger != null)
{
RadAjaxManager.GetCurrent(Page).AjaxRequest += new RadAjaxControl.AjaxRequestDelegate(ViewCRMRecords_AjaxRequest);
}
and here is the code that gets called from the javascript.
protected void ViewCRMRecords_AjaxRequest(object sender, AjaxRequestEventArgs e)
{
switch (e.Argument)
{
case "Rebind":
GridQuickCRMResults.MasterTableView.Rebind();
break;
}
}
now..if i put a breakpoint into the code at the line:
GridQuickCRMResults.MasterTableView.Rebind();
everytime i type into the text box...that line does get hit in code...i also traced it all the way through the needdatasource and it all works fine...i get results etc...
however nothing gets displayed on the grid...
| <EditFormSettings> |
| <EditColumn CurrentFilterFunction="NoFilter" FilterListOptions="VaryByDataType" UniqueName="EditCommandColumn1" |
| InsertImageUrl="../../Skins/Default/Grid/Edit.gif" /> |
| </EditFormSettings> |
| <telerik:RadGrid ID="RadGrid1" runat="server" AutoGenerateColumns="False" AllowAutomaticDeletes="True" |
| AllowAutomaticInserts="True" AllowAutomaticUpdates="True" DataSourceID="SqlDataSource1" |
| GridLines="None" BackColor="Gray" Font-Bold="False" Font-Italic="False" Font-Overline="False" |
| Font-Strikeout="False" Font-Underline="False" HeaderStyle-BackColor="Beige" ShowHeader="true" |
| AllowPaging="True" PageSize="10" Width="80%" BorderWidth="0px" ShowStatusBar="true" |
| AllowSorting="True"> |
| <PagerStyle Mode="NumericPages"></PagerStyle> |
| <MasterTableView CommandItemDisplay="Bottom" DataSourceID="SqlDataSource1" HorizontalAlign="NotSet" |
| DataKeyNames="ID" CurrentResetPageIndexAction="SetPageIndexToFirst" Dir="LTR" |
| Frame="Border" TableLayout="Auto" Font-Bold="False" Font-Italic="False" Font-Overline="False" |
| Font-Strikeout="False" Font-Underline="False" BackColor="#dcdcdc" EditMode="InPlace" |
| AllowMultiColumnSorting="True" AutoGenerateColumns="false"> |
| ... |
| </MasterTableView> |