Hi,
I have a radtreeview control. I bind this during the page load event. I’d like to add some attributes to the nodes.
So far I have done this via the NodeDataBound event. However what I really need to do is store
some data from the original datatable in some attributes.
I guess to do this I need to create the radtreeview by
looping through the datable and creating the nodes individually. When I do this I can’t see a way to set the
parent IDs?
Any suggestions?
Hi,
I have integrated radslider on one ouf our website, unfortunately it was not displying after deployment, it just shows 'Decrease' and 1 only. Please help
Dileep
I have a grid with two buttons on each row, open and remove. Using OnItemCommand click the button goes to the code fine, the remove button works fine but the open button always gets the id from the first row.
This is the code that creates the two buttons, the same except for the names and images.
GridButtonColumn gridButtonColumn = new GridButtonColumn();
gridButtonColumn.ButtonType = GridButtonColumnType.ImageButton;
gridButtonColumn.ImageUrl = "~/Images/OpenLinkIcon.png";
gridButtonColumn.CommandName = "OpenLink";
gridButtonColumn.UniqueName = "OpenLink";
gridButtonColumn.Text = "Open Signup Template";
gridButtonColumn.Display = true;
gridButtonColumn.HeaderText = "";
gridButtonColumn.ItemStyle.HorizontalAlign = HorizontalAlign.Center;
gridButtonColumn.HeaderStyle.Width = Unit.Pixel(40);
signupGrid.MasterTableView.Columns.Add(gridButtonColumn);
gridButtonColumn = new GridButtonColumn();
gridButtonColumn.ButtonType = GridButtonColumnType.ImageButton;
gridButtonColumn.ImageUrl = "~/Images/DeleteIcon.png";
gridButtonColumn.CommandName = "Delete";
gridButtonColumn.UniqueName = "Delete";
gridButtonColumn.Text = "Remove Signup Template";
gridButtonColumn.Display = true;
gridButtonColumn.HeaderText = "";
gridButtonColumn.ItemStyle.HorizontalAlign = HorizontalAlign.Center;
gridButtonColumn.HeaderStyle.Width = Unit.Pixel(40);
signupGrid.MasterTableView.Columns.Add(gridButtonColumn);
This is the grid definition
<
div
id
=
"GridDiv"
runat
=
"server"
>
<
asp:panel
runat
=
"server"
ID
=
"Panel1"
CssClass
=
"windowPercent"
>
<
telerik:RadGrid
runat
=
"server"
ID
=
"SignupGrid"
OnItemCommand
=
"Grid_ItemCommand"
></
telerik:RadGrid
>
</
asp:panel
>
</
div
>
And this the aspx.cs code for the Grid_ItemCommand.
protected void Grid_ItemCommand(object source, GridCommandEventArgs e)
{
if (isPageRefresh || e == null || e.Item == null) {
return;
}
GridDataItem item = (GridDataItem)e.Item;
string strId = item[SignupListData.FIELD_ID].Text;
switch (e.CommandName) {
case "Delete":
string name = item[SignupListData.FIELD_NAME].Text;
lblConfirm.Text = "Are you sure you want to remove sigup template \"" + name + "\"?";
RemoveSignup.Value = "Yes";
RemoveId.Value = strId;
break;
case "OpenLink":
this.Response.Redirect("/Signup/Design/" + strId);
break;
}
}
The and name values for Delete is the proper one for the row, while the for OpenLink is always the FIELD_ID from the first row,
Searching the forums and examples I found several different ways of getting the field id value but none of them worked.
No idea how to fix this problem.
George
FYI: the form to post this to the forum has a buggy edit box. If I backspace once its works but further ones will skip to the front of words removing spaces unexpectedly. It was rather difficult to make this post.
Hi,
Would it be possible to resize the RadWindow proportional only when manually resizing?
So, like when holding Shift key in PhotoShop.
Marc
Here is the idea: a tree view with nodes. Once a node is clicked, the server generates a panel with some buttons specific for that node. Those buttons once clicked (Click event postback) call the event handler on the server. Basically dynamically created nodes with postbacks after being clicked create buttons with postbacks.
Here is my approach: I have a RadTreeView with some data. The RadTreeView has a "OnNodeClick" event handler that gets the actual clicked node. Then the server generates dynamically buttons on a panel based on the value in the node. Problem is that the "OnNodeClick" event handler is fired after the page load and therefore the postbacks from the buttons are not bound. So I tried another approach by adding the selected node value to the ViewState and then reading from it at Page_Load, but the problem is still the same. The chain is Page_Load -> OnNodeClicked, so the ViewState gets set only after the controls have been generated and therefore only on a second Page_Load I can actually get the value.
Some code to make it clear:
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
InitTreeNodesFromServices(resourceTree);
}
var resourceIdObj = ViewState["ResourceId"];
if(resourceIdObj != null)
GenerateButtonsForSelection((string)resourceIdObj);
}
protected void resourceTree_OnNodeClick(object sender, RadTreeNodeEventArgs e)
{
ViewState.Add("ResourceId", e.Node.Value);
}
I know it's a simple issue, but I have been stuck with it for a whole day at this point. What is the right way to handle this situation? Maybe I need a different approach? Thank you.