I'm trying to incorporate the copyandpaste example on a page with a masterpage, and I'm thinking that is what's giving me all the grief. I get a message that says "popup menu name is not valid". I've tried some of the suggestions from this forum within other posts, but to no avail. I have tried different variations of the menu name and I get compile errors basically stating that the name I'm using doesn't exist. I did a response.write in the page.init to get the name of the popup menu, and this is what it gave me back ctl00_ContentPlaceHolder1_CopyPasteMenu
The masterpage has a contentplaceholder, and in the child page I placed the CopyPasteMenu within that control. Do I somehow have to reference the parent(masterpage), or should I put the CopyPasteMenu on the masterpage, and reference it that way? I've pasted my page source below, and if anyone needs more, I can post that as well.
Thanx,Mike
<%@ Register Assembly="Infragistics2.WebUI.WebDataInput.v7.3, Version=7.3.20073.1043, Culture=neutral, PublicKeyToken=7dd5c3163f2cd0cb"
<%@ Register Assembly="Infragistics2.WebUI.WebCombo.v7.3, Version=7.3.20073.1043, Culture=neutral, PublicKeyToken=7dd5c3163f2cd0cb"
<%@ Register Assembly="Infragistics2.WebUI.UltraWebGrid.v7.3, Version=7.3.20073.1043, Culture=neutral, PublicKeyToken=7dd5c3163f2cd0cb"
<%@ Register Assembly="Infragistics2.WebUI.UltraWebNavigator.v7.3, Version=7.3.20073.1043, Culture=neutral, PublicKeyToken=7dd5c3163f2cd0cb"
<%@ Register Assembly="Infragistics2.WebUI.Misc.v7.3, Version=7.3.20073.1043, Culture=neutral, PublicKeyToken=7dd5c3163f2cd0cb"
<%@ Register Assembly="Infragistics2.WebUI.UltraWebToolbar.v7.3, Version=7.3.20073.1043, Culture=neutral, PublicKeyToken=7dd5c3163f2cd0cb"
<%@ Register Src="~/Clipboard/Clipboard.ascx" TagName="Clipboard" TagPrefix="uc1" %>
<asp:Content ID="Content1" ContentPlaceHolderID="ContentPlaceHolder1" Runat="Server">
<script type="text/javascript">
//Firefox passes event arg as parameter (evt). If that is null, we'll use window.event (Internet Explorer proprietary)
//Call show menu with menuID
//specify clientX and clientY to get more accurate positioning for this particular layout
// igmenu_showMenu("<%=Me.CopyPasteMenu.ClientID %>",null,(e.clientX+document.documentElement.scrollLeft)+"px",(e.clientY+document.documentElement.scrollTop)+"px");
//Firefox (W3C) - cancel event
//InternetExplorer (Proprietary) - cancel event
}
function GridClick(grid,src,button){
//Because the WebGrid consumes all mouse events, we need to add
//a listener to determine when a mouse click has occured so we can
//close the popup menu appropriately
//function InsertRow() {
// var grid=igtbl_getGridById("CopyPasteGrid1");
// var row=grid.Rows.getRow(grid.Rows.length-1);
// row.remove();
// grid.Rows.insert(row,0);
//}
{
//Get the activerow
if(row!=null)
//if activerow exists then add a new row
else
//if no activerow then set one and add the row to the customers band
//Grab a reference to the ContextMenuItem that was clicked on
var curGrid=null;
//We need to know which tab we're on, so we can figure out which
//grid we want to perform the copy/paste operation on.
//Notice we use the asp style tag to emit the ClientID of the tab.
//This makes our code more maintainable in the event that the tab
// curGrid="<%=Me.uwgListsEntered.ClientID %>";
if(item!=null){
//We'll use the text from the menuitem to decide which operation to perform
curGrid.cut();
break;
curGrid.copy();
curGrid.paste();
curGrid.insert();
case "Export To Excel":
</script>
<table id="tblAppLocation" style="width: 100%">
<tr>
<td style="width: 30%; font-weight: bold; color: white; background-image:url(../../Images/tab1024_red.gif); font-family: Tahoma; height: 21px; font-size: 8pt;">
List(s) Entered</td>
<td style="width: 70%; font-weight: bold; color: white; font-family: Tahoma; background-color: transparent; height: 21px; background-image: url(../../Images/tab1024_red.gif); background-repeat: repeat-y; overflow: visible;">
<asp:Label ID="lblProjectDescription" runat="server" Text="Label" BackColor="Transparent" Font-Bold="True" Font-Names="Tahoma" Font-Size="8pt" ForeColor="White"></asp:Label></td>
</tr>
<tr></tr>
</table>
<table id="tblMain" style="width: 100%; height: 100%">
<td style="width: 1386px">
<igtbar:ultrawebtoolbar id="uwtoolLOLMaintenance" runat="server" Font-Names="Tahoma" Font-Size="7pt" StyleSetName="RadioFlyer" StyleSetPath="~/App_Themes" EnableAppStyling="True" BackgroundImage="" ImageDirectory="" ItemWidthDefault="">
<igtbar:TBSeparator Key="tbtnSep0" />
<igtbar:TBarButton DisabledImage="" HoverImage="" Image="~/Images/New.bmp" Key="tbtnNewRow"
<Images>
</Images>
<igtbar:TBarButton DisabledImage="" HoverImage="" Image="~/Images/Save.bmp"
<igtbar:TBSeparator Key="tbtnSep1" />
<igtbar:TBarButton DisabledImage="" HoverImage="" Image="~/Images/Copy.bmp"
<igtbar:TBarButton DisabledImage="" HoverImage="" Image="~/Images/Mainframe.bmp"
<igtbar:TBarButton DisabledImage="" HoverImage="" Image="~/Images/Exit.bmp" Key="tbtnExit"
</igtbar:TBarButton>
</Items>
</igtbar:ultrawebtoolbar>
</td>
<td style="height: 21px; width: 1386px;">
<asp:Label ID="lblErrorMessage" runat="server" ForeColor="Red"></asp:Label>
<igmisc:WebGroupBox ID="wgbCopyFromProject" runat="server" EnableAppStyling="True"
Font-Bold="True" Font-Names="Tahoma" Font-Size="8pt" ForeColor="Black" StyleSetName="RadioFlyer"
<Template>
<igcmbo:WebCombo ID="wcbCopyFromProject" runat="server" BackColor="White" BorderColor="Silver"
BorderStyle="Solid" BorderWidth="1px" Font-Names="Tahoma" Font-Size="8pt" ForeColor="Black"
<Columns>
<header caption="ProjectNumber" key="ProjectNumber" title="ProjectNumber"></header>
<igtbl:UltraGridColumn>
<RowLayoutColumnInfo OriginX="1"></RowLayoutColumnInfo>
<footer>
</footer>
</Columns>
<DropDownLayout BorderCollapse="Separate" RowHeightDefault="18px" Version="4.00">
<BorderDetails ColorLeft="White" ColorTop="White" WidthLeft="1px" WidthTop="1px" />
<FrameStyle BackColor="Silver" BorderStyle="Ridge" BorderWidth="2px" Cursor="Default"
</FrameStyle>
<BorderDetails WidthLeft="0px" WidthTop="0px" />
<SelectedRowStyle BackColor="#C00000" ForeColor="White" />
<Rows>
<cells>
<igtbl:UltraGridCell Text="NSP208"></igtbl:UltraGridCell>
</igtbl:UltraGridRow>
</igcmbo:WebCombo>
</igmisc:WebGroupBox>
<td style="width: 1386px;height: 50px;">
<igmisc:WebGroupBox ID="wgbColumnData" runat="server" EnableAppStyling="True"
Font-Bold="True" Font-Names="Tahoma" Font-Size="8pt" ForeColor="Black"
<igmisc:WebGroupBox ID="wgbColumn" runat="server" BorderColor="#C00000"
BorderWidth="1px" Font-Bold="False" Font-Names="Tahoma" Font-Size="8pt" ForeColor="Black"
<igcmbo:WebCombo ID="wcbColumn" runat="server" BackColor="White" BorderColor="Silver"
BorderStyle="Solid" BorderWidth="1px" EnableAppStyling="True" Font-Bold="False" Font-Names="Tahoma"
Font-Size="8pt" ForeColor="Black" SelBackColor="192, 0, 0" SelForeColor="White" StyleSetName="RadioFlyer"
<header caption="Column0"></header>
<DropDownLayout BorderCollapse="Separate" RowHeightDefault="18px" Version="4.00" ColHeadersVisible="No">
"></igtbl:UltraGridCell>
</cells>
<igtbl:UltraGridRow Height="">
<igtbl:UltraGridCell Text="DOLLARS"></igtbl:UltraGridCell>
<igtbl:UltraGridCell Text="FREQUENCY"></igtbl:UltraGridCell>
<igtbl:UltraGridCell Text="KEYCODE"></igtbl:UltraGridCell>
<igtbl:UltraGridCell Text="MAJORSEGMENT"></igtbl:UltraGridCell>
<igtbl:UltraGridCell Text="PRIORITY"></igtbl:UltraGridCell>
<igtbl:UltraGridCell Text="RECENCY"></igtbl:UltraGridCell>
<igtbl:UltraGridCell Text="SEGMENTBREAK"></igtbl:UltraGridCell>
<igtbl:UltraGridCell Text="SUB-SEGMENT"></igtbl:UltraGridCell>
<igtbl:UltraGridCell Text="ZIPSEGMENTLOW"></igtbl:UltraGridCell>
</Template>
<td style="width: 100px; height: 25px">
<igmisc:WebGroupBox ID="wgbCellValue" runat="server" BorderColor="#C00000" BorderWidth="1px"
Font-Bold="False" Width="100px" Font-Names="Tahoma" Font-Size="8pt" ForeColor="Black" StyleSetName="RadioFlyer"
StyleSetPath="~/App_Themes" Text="Value:">
<igtxt:WebTextEdit ID="wteValue" runat="server" EnableAppStyling="True" Font-Bold="False"
Font-Names="Tahoma" Font-Size="8pt" MaxLength="255" StyleSetName="RadioFlyer" StyleSetPath="~/App_Themes" Width="95px" SelectionOnFocus="SelectAll">
</igtxt:WebTextEdit>
<td style="width: 65px; height: 25px">
<igmisc:WebGroupBox ID="wgbStartRow" runat="server" BorderColor="#C00000" BorderWidth="1px"
Font-Bold="False" Font-Names="Tahoma" ForeColor="Black" StyleSetName="RadioFlyer"
<igtxt:WebTextEdit ID="wteStartRow" runat="server" EnableAppStyling="True" MaxLength="7"
SelectionOnFocus="SelectAll" StyleSetName="RadioFlyer" StyleSetPath="~/App_Themes"
<igtxt:WebTextEdit ID="wteNumberOfRows" runat="server" EnableAppStyling="True" MaxLength="7"
<td style="width: 55px; height: 25px;">
<asp:CheckBox ID="chkAllRows" runat="server" Font-Bold="False" Font-Names="Tahoma"
<igmisc:WebGroupBox ID="wgbIncrementDecrementBy" runat="server" BorderColor="#C00000"
StyleSetName="RadioFlyer" StyleSetPath="~/App_Themes" Text="Increment/Decrement By:"
<igtxt:WebTextEdit ID="wteIncrementDecrementBy" runat="server" Width="45px" EnableAppStyling="True" StyleSetName="RadioFlyer" StyleSetPath="~/App_Themes">
<asp:RadioButtonList ID="rblIncrementDecrement" runat="server" Font-Names="Tahoma"
<asp:ListItem>Increment</asp:ListItem>
</asp:RadioButtonList>
<td style="width: 175px; height: 25px">
<igtbar:UltraWebToolbar ID="uwtoolOKCancel" runat="server" BackgroundImage="" EnableAppStyling="True"
ImageDirectory="" ItemWidthDefault="" StyleSetName="RadioFlyer" StyleSetPath="~/App_Themes">
<Items>
<igtbar:TBSeparator />
<igtbar:TBarButton DisabledImage="" HoverImage="" Image="~/Images/Checkmark-Green.bmp"
Key="OK" SelectedImage="" Tag="OK" Text="OK">
<DefaultImage Url="~/Images/Checkmark-Green.bmp" />
<igtbar:TBarButton DisabledImage="" HoverImage="" Image="~/Images/CancelX.bmp" Key="Cancel"
SelectedImage="" Tag="Cancel" Text="Cancel">
<DefaultImage Url="~/Images/CancelX.bmp" />
</igtbar:UltraWebToolbar>
<table id="tblResultsToWorkPad" style="width: 950px;height:10px;">
<asp:CheckBox ID="chkDataToWorkSpace" runat="server" Font-Bold="True" Font-Names="Tahoma"
</template>
<igmisc:WebPanel ID="wpanWorkSpace" runat="server" EnableAppStyling="True" Expanded="False"
<PanelStyle Font-Names="Tahoma" Font-Size="8pt">
<Header Text="WorkSpace">
<Bands>
<AddNewRow View="NotSet" Visible="NotSet">
</igtbl:UltraGridBand>
<DisplayLayout AllowColSizingDefault="Free" AllowColumnMovingDefault="OnServer" AllowDeleteDefault="Yes"
AllowSortingDefault="OnClient" AllowUpdateDefault="Yes" BorderCollapseDefault="Separate"
HeaderClickActionDefault="SortMulti" Name="UltraWebGrid1" RowHeightDefault="20px"
RowSelectorsDefault="No" SelectTypeRowDefault="Extended" StationaryMargins="Header"
<GroupByBox>
</BoxStyle>
<GroupByRowStyleDefault BackColor="Control" BorderColor="Window">
<ActivationObject BorderColor="" BorderWidth="">
<FooterStyleDefault BackColor="LightGray" BorderStyle="Solid" BorderWidth="1px">
</FooterStyleDefault>
<RowStyleDefault BackColor="Window" BorderColor="Silver" BorderStyle="Solid" BorderWidth="1px"
<BorderDetails ColorLeft="Window" ColorTop="Window" />
</RowStyleDefault>
<FilterOperandDropDownStyle BackColor="White" BorderColor="Silver" BorderStyle="Solid"
BorderWidth="1px" CustomRules="overflow:auto;" Font-Names="Verdana,Arial,Helvetica,sans-serif"
<Padding Left="2px" />
<FilterHighlightRowStyle BackColor="#151C55" ForeColor="White">
<FilterDropDownStyle BackColor="White" BorderColor="Silver" BorderStyle="Solid" BorderWidth="1px"
CustomRules="overflow:auto;" Font-Names="Verdana,Arial,Helvetica,sans-serif" Font-Size="11px"
</FilterOptionsDefault>
<EditCellStyleDefault BorderStyle="None" BorderWidth="0px">
<FrameStyle BackColor="Window" BorderColor="InactiveCaption" BorderStyle="Solid"
BorderWidth="1px" Font-Names="Microsoft Sans Serif" Font-Size="8.25pt" Height="200px"
<PagerStyle BackColor="LightGray" BorderStyle="Solid" BorderWidth="1px">
</PagerStyle>
<AddNewBox Hidden="False">
</AddNewBox>
</igtbl:UltraWebGrid>
</igmisc:WebPanel>
<td style="width: 1386px; height: 375px;">
<igtbl:UltraWebGrid ID="uwgListsEntered" runat="server" EnableAppStyling="True" StyleSetName="RadioFlyer" StyleSetPath="~/App_Themes" Width="100%" Height="384px">
<igtbl:UltraGridBand AllowRowNumbering="Continuous">
<igtbl:UltraGridColumn Key="ListID">
</Header>
<igtbl:UltraGridColumn Key="FamilyID">
<RowLayoutColumnInfo OriginX="1" />
<Footer>
</Footer>
<igtbl:UltraGridColumn Case="Upper" Key="Priority">
<RowLayoutColumnInfo OriginX="2" />
<igtbl:UltraGridColumn Case="Upper" Key="MajorSegment">
<RowLayoutColumnInfo OriginX="3" />
<igtbl:UltraGridColumn Case="Upper" Key="Sub-Segment">
<RowLayoutColumnInfo OriginX="4" />
<igtbl:UltraGridColumn Case="Upper" Key="Group">
<RowLayoutColumnInfo OriginX="5" />
<igtbl:UltraGridColumn Case="Upper" Key="Keycode">
<RowLayoutColumnInfo OriginX="6" />
<igtbl:UltraGridColumn Case="Upper" Key="Division">
<RowLayoutColumnInfo OriginX="7" />
<igtbl:UltraGridColumn Case="Upper" Key="Recency">
<RowLayoutColumnInfo OriginX="8" />
<igtbl:UltraGridColumn Case="Upper" Key="Select">
<RowLayoutColumnInfo OriginX="9" />
<igtbl:UltraGridColumn Case="Upper" Key="Frequency">
<RowLayoutColumnInfo OriginX="10" />
<igtbl:UltraGridColumn Case="Upper" Key="Dollars">
<RowLayoutColumnInfo OriginX="11" />
<igtbl:UltraGridColumn Case="Upper" Key="SegmentBreak">
<RowLayoutColumnInfo OriginX="12" />
<igtbl:UltraGridColumn Case="Upper" Key="RecordSource">
<RowLayoutColumnInfo OriginX="13" />
<igtbl:UltraGridColumn Case="Upper" Key="BrokerID">
<RowLayoutColumnInfo OriginX="14" />
<igtbl:UltraGridColumn Key="Quantity">
<RowLayoutColumnInfo OriginX="15" />
<igtbl:UltraGridColumn Case="Upper" Key="ZipSegmentLow">
<RowLayoutColumnInfo OriginX="16" />
<igtbl:UltraGridColumn Case="Upper" Key="ZipSegmentHigh">
<RowLayoutColumnInfo OriginX="17" />
<table id="reMajorSegment" style="width: 275px; height: 25px;">
<asp:Label ID="lblMajorSegment" runat="server" Text="MajorSegment"></asp:Label></td>
<igcmbo:WebCombo ID="WebCombo1" runat="server" BackColor="White" BorderColor="Silver"
BorderStyle="Solid" BorderWidth="1px" ForeColor="Black" SelBackColor="DarkBlue" SelForeColor="White"
<DropDownLayout BorderCollapse="Separate" RowHeightDefault="15px" Version="4.00">
<p align="right">
ListID
<input id="igtbl_TextBox_0_1" columnkey="ListID" style="width: 150px" type="text" /><br />
FamilyID
<input id="igtbl_TextBox_0_2" columnkey="FamilyID" style="width: 150px" type="text" /><br />
Priority
<input id="igtbl_TextBox_0_3" columnkey="Priority" style="width: 150px" type="text" /><br />
MajorSegment
<input id="igtbl_TextBox_0_4" columnkey="MajorSegment" style="width: 150px" type="text" /><br />
Sub-Segment
<input id="igtbl_TextBox_0_5" columnkey="SubSegment" style="width: 150px" type="text" /><br />
Group
<input id="igtbl_TextBox_0_6" columnkey="Group" style="width: 150px" type="text" /><br />
Keycode
<input id="igtbl_TextBox_0_7" columnkey="Keycode" style="width: 150px" type="text" /><br />
Division
<input id="igtbl_TextBox_0_8" columnkey="Division" style="width: 150px" type="text" /><br />
Recency
<input id="igtbl_TextBox_0_9" columnkey="Recency" style="width: 150px" type="text" /><br />
Select
<input id="igtbl_TextBox_0_10" columnkey="Select" style="width: 150px" type="text" /><br />
Frequency
<input id="igtbl_TextBox_0_11" columnkey="Frequency" style="width: 150px" type="text" /><br />
Dollars
<input id="igtbl_TextBox_0_12" columnkey="Dollars" style="width: 150px" type="text" /><br />
SegmentBreak
<input id="igtbl_TextBox_0_13" columnkey="SegmentBreak" style="width: 150px" type="text" /><br />
RecordSource
<input id="igtbl_TextBox_0_14" columnkey="RecordSource" style="width: 150px" type="text" /><br />
BrokerID
<input id="igtbl_TextBox_0_15" columnkey="BrokerID" style="width: 150px" type="text" /><br />
Quantity
<input id="igtbl_TextBox_0_16" columnkey="Quantity" style="width: 150px" type="text" /><br />
ZipSegmentLow
<input id="igtbl_TextBox_0_17" columnkey="ZipSegmentLow" style="width: 150px" type="text" /><br />
ZipSegmentHigh
</p>
<p align="center">
<input id="igtbl_reOkBtn" onclick="igtbl_gRowEditButtonClick(event);" style="width: 50px"
type="button" value="OK" />
<input id="igtbl_reCancelBtn" onclick="igtbl_gRowEditButtonClick(event);" style="width: 50px"
</RowEditTemplate>
<BorderDetails WidthBottom="3px" WidthLeft="3px" WidthRight="3px" WidthTop="3px" />
HeaderClickActionDefault="SortMulti" Name="uwgListsEntered" RowHeightDefault="20px" SelectTypeRowDefault="Extended"
BorderWidth="1px" Font-Names="Tahoma" Font-Size="8.25pt" Height="384px"
<ButtonStyle Font-Names="Tahoma" Font-Size="8pt">
</AddNewRowDefault>
</RowSelectorStyleDefault>
<SelectedRowStyleDefault BackColor="LightGray" BorderColor="Transparent" BorderStyle="None"
</SelectedRowStyleDefault>
</DisplayLayout>
<IslandStyle BackColor="LightGray" BorderStyle="Outset" BorderWidth="1px" Cursor="Default">
</IslandStyle>
<ItemStyle CssClass="ContextMenuItem" />
<ignav:Item HoverImageUrl="./cut_over.gif" ImageUrl="./cut.gif"
<HoverImage Url="./cut_over.gif" />
</ignav:Item>
<ignav:Item HoverImageUrl="./copy_over.gif" ImageUrl="./copy.gif"
<HoverImage Url="./copy_over.gif" />
<ignav:Item HoverImageUrl="./paste_over.gif" ImageUrl="./paste.gif"
<HoverImage Url="./paste_over.gif" />
<ignav:Item Separator="True">
<ignav:Item ImageUrl="./excelIcon.gif" Text="Export To Excel">
<DefaultImage AlternateText="Export To Excel" Url="./excelIcon.gif" />
<DisabledStyle Font-Names="MS Sans Serif" Font-Size="8pt" ForeColor="Gray">
<Levels>
</Levels>
<SeparatorStyle CustomRules="background-repeat:repeat-x;" BackgroundImage="~/ig_res/radioflyer/images/ig_menuTri.gif" />
<ExpandEffects ShadowColor="LightGray" />
<MenuClientSideEvents ItemClick="ContextMenuItemClick" InitializeMenu="" ItemChecked="" ItemHover="" SubMenuDisplay="" />
<asp:Button ID="ExportToExcelButton" runat="server" Text="Button" />
</asp:Content>
Okay, I figured out part of the issue. I added the followingvar MyMenuId;function InitializeLayout(menuId){ MyMenuId = menuid;}
Then, in my ShowContextMenu eventhandler, I changed the igmenu_showMenu to use the variable MyMenuId. and then my popup appears. Now, when I click on the popup menu, nothing happens. So, I looked to see what the value of menuid and itemid are inside of the ContextMenuItemClick event.
For menuid, it's the same value as MyMenuId, but the value for itemid is this [object Object]. So, now I get the popup menu, but when I click on it, it don't return the itemid. Any ideas?
Thanx,
Mike
Okay, I got it all working. I had to capture the name of the grid on initial layout
function UltraWebGrid1_InitializeLayoutHandler(gridName){ MyGridId = gridName; }
as well, and then use that when I grabbed the GridId in the ContextMenuItemClick handler like this:function ContextMenuItemClick(menuid,itemid){ var item=igmenu_getItemById(itemid); var curGrid=null; curGrid = igtbl_getGridById(MyGridId);}Funny, on the GridClick handler, I didn't have to change anything that referenced the grid from my initial code.....