C# - Render Multiple Control Collections In Custom Control?

Mar 15, 2010

I've build a custom WebControl, which has the following structure:

<gws:ModalBox ID="ModalBox1" HeaderText="Title" runat="server">
<Contents>
<asp:Label ID="KeywordLabel" AssociatedControlID="KeywordTextBox" runat="server">Keyword: </asp:Label><br />
<asp:TextBox ID="KeywordTextBox" Text="" runat="server" />

[Code]....

However it seems to render properly, it doesn't work anymore if I add some asp.net labels and input controls inside the property (see above asp.net code). I'll get the HttpException:

Unable to find control with id 'KeywordTextBox' that is associated with the Label 'KeywordLabel'.

Somewhat understandable, because the label appears before the textbox in the controlcollection. However, with default asp.net controls it does work, so why doesn't this work? What am I doing wrong? Is it even possible to have two control collections in one control? Should I render it differently?

View 2 Replies


Similar Messages:

Web Forms :: Custom Control With Databind And Collections

Jun 8, 2010

I've written a custom control that converts datasources into an IEnumerable and then binds the data. This works fine and I have LoadPostData working after postbacks. I can also using a collection to load it. Like adding listitems to a dropdownlist on an html page. This works fine and I have LoadPostData working after postbacks

[Category("Behavior"),
Description("A collection of CheckBoxItems"),
DesignerSerializationVisibility(DesignerSerializationVisibility.Content),
NotifyParentProperty(true),
PersistenceMode(PersistenceMode.InnerDefaultProperty)]
public CheckBoxFieldCollection CheckBoxItems
{....}

Kinda struggling on merging the two. I think when i databind, instead of adding my CheckBoxItem to Controls I think I need to add it to my collection CheckBoxItems and then proced with creating childcontrols. It works the first pass through when I bind to the datasource. When I do a postback my controls collection goes to null. Can anyone point me in which direction to go? Also, after databinding, if I do , MyControl.CheckBoxItems.Add(new CheckBoxItem(..)), the new one doesnt show up.

View 1 Replies

Custom Server Controls :: Property Collections Not Persisted When Control Inside Update Panel And Content Placeholder

Apr 13, 2010

I'm creating an ASP.NET Control which has a property collection for Columns which the user can edit in the Property Collection Editor..

In most circumstances this works fine, the collection can be edited in the designer and the appropriate tags are added inside the control in the ASPX file.

It works fine when

My control is added to the form

[Code]....

My control is added inside an Update Panel

[Code]....

[Code]....

However, if My control is inside a Content Placeholder which is inside an Update Panel, it fails to work as it should. In this scenario, when the Columns collection is edited in the designer, if you then switch back to Source view, the Columns collection is emptied. I have to save the aspx page before switching back to Source view for the changes to be kept.

[Code]....

how to get around this problem? Is there something I may have missed?

Here's the code for the Control

[Code]....

View 2 Replies

Custom Server Controls :: Why Custom Gridview Control Not Render HTML Properties Under Properly In Visual Studio 2005

Mar 5, 2010

Why custom Gridview control not render html properlies under <Columns> properly in Visual Studio 2005?

For example:

[code]....

View 1 Replies

C# - How To Render Children Tags In A Custom Server Control

Nov 17, 2010

I'm working on a custom ServerControl, I've created it like below :

[ParseChildren(true), PersistChildren(true)]
[ToolboxData("<{0}:Menu runat="server"></{0}:Menu>")]
public class Menu : WebControl
{
.....
[DesignerSerializationVisibility(DesignerSerializationVisibility.Content)]
[PersistenceMode(PersistenceMode.InnerDefaultProperty)]
public MenuItem MenuItems { get; set; }
}
[ParseChildren(true), PersistChildren(true)]
public class MenuItem : WebControl
{
......
[PersistenceMode(PersistenceMode.InnerProperty)]
public MenuItem SubMenuItems
{
get
{
if (_SubMenuItems == null) return new MenuItem();
return _SubMenuItems;
}
set
{
_SubMenuItems = value;
}
}
private MenuItem _SubMenuItems;
[TemplateContainer(typeof(MenuItem))]
[PersistenceMode(PersistenceMode.InnerProperty)]
public ITemplate Template { get; set; }
}
<%@ Register Assembly="JQueryMenu" Namespace="JQueryMenu" TagPrefix="MdsMenu" %>
<MdsMenu:Menu ID="Menu1" runat="server">
<AnimationItems AnimationSpeed="Fast" AnimationType="Opacity_Height" DropShadow="true"
Delay="1000" />
<MdsMenu:MenuItem ID="MenuItem1" runat="server" Text="MenuItem 01">
<MdsMenu:MenuItem runat="server">
<Template>
<asp:Button ID="Button1" runat="server" Text="Button" />
<asp:CheckBox ID="CheckBox1" runat="server" />
</Template>
</MdsMenu:MenuItem>
</MdsMenu:MenuItem>
<MdsMenu:MenuItem ID="MenuItem2" runat="server" Text="MenuItem 01">
<MdsMenu:MenuItem ID="MenuItem3" runat="server">
<Template>
<asp:Button ID="Button2" runat="server" Text="Button" />
<asp:CheckBox ID="CheckBox2" runat="server" />
</Template>
<MdsMenu:MenuItem ID="MenuItem5" runat="server" Text="MenuItem 05">
</MdsMenu:MenuItem>
<MdsMenu:MenuItem ID="MenuItem6" runat="server" Text="MenuItem 06">
</MdsMenu:MenuItem>
<MdsMenu:MenuItem ID="MenuItem4" runat="server">
<Template>
<asp:Image ID="Image1" runat="server" />
<asp:TextBox ID="TextBox1" runat="server"></asp:TextBox>
</Template>
</MdsMenu:MenuItem>
</MdsMenu:MenuItem>
</MdsMenu:MenuItem>
</MdsMenu:Menu>

Now, How can I Parse it and render it in RenderContent method ? !!!
The following method is always throw the first Exception, it means this.Controls is always empty !!! How can I do it and how I can access to the nested children in RenderControl method ?

public class Menu : WebControl
{
....
public override void RenderControl(HtmlTextWriter output)
{
if (!this.HasControls())
throw new Exception("Controls are empty");
....
}
}

View 1 Replies

Custom Control Render JavaScript Code In Head Tags?

Feb 3, 2011

I am creating a custom control and was wondering if it is possible to render any JavaScript in the head tags of the page it is placed on? I am thinking I would need to use the FindControl method, but am not sure what I need to bind to. I am thinking the page object? Let me know if I am thinking in the right direction or if there is another option.

My only concern with the above mentioned idea is that how do I render all my content while placing some code in the head tags?

View 2 Replies

Custom Server Controls :: Trying To Render Control(ComboBox) Programmatically

Feb 18, 2010

I am trying to render control(ComboBox) programmatically, and i am getting error that tell me that i have to add ScriptManager to the page.

But, i did that, and still its not working:

[Code]....

And the render control html is:

protected override void Render( System.Web.UI.HtmlTextWriter writer )

View 3 Replies

Web Form Render Engine Outputs A Control Tree / Looking For Info On Render Logic.

Feb 12, 2011

I've been watching a video on Scott Hanselmnn teaching MVC 2 tricks/tips. He mentions how MVC 2 by default uses ASP.NET Web Forms view engine to render the output of the views; he mentions that the web forms view engine is a little slower than it could be for MVC 2 since it generates a control tree and then outputs the HTML to the page (I hope I said that right).

I was wondering what he meant by web forms generating a code tree before outputting the HTML to the page. Does anyone have insight on the view engine of Web forms and the steps of the rendering process works for ASP.NET and MVC2?

View 2 Replies

C# - Add Reference To Method In Custom Control To A Child Control Created In That Same Custom Control

Feb 3, 2010

I have a custom control that is based off the gridview control located at: here The control is basically a gridview that automatically creates a column of checkboxes that can be used to "check" individual rows in the gridview. During the gridview's "CreateColumns" event, the "checkboxcolumn" is created dynamically. The checkboxcolumn also contains another checkbox in the header that is used to "select/deselect all" checkboxes in the column. Since the gridview does not automatically remember the state of the checkboxes in the checkboxcolumn on postback, I added a method to the control called "SaveCheckBoxState" which stores the indexes of the checked rows in Viewstate, and then I modified the "OnRowDataBound" event to check the Viewstate and reset the checkboxes based on the Viewstate.

I then added a call to "SaveCheckBoxState" in the gridview's OnSorting and OnPageIndexChanging events. This works great so long as I'm sorting or changing pages. However, I need it to update the viewstate everytime someone clicks or unclicks one of the checkboxes. At this time, the checkboxes are rendered with an onclick event that calls some javascript to highlight the row, or in the case of the checkbox in the header, to select/deselect all checkboxes. I need to call the "SaveCheckBoxState" method from the javascript used by the customcontrol, or I need to find a way to modify viewstate from javascript and perform the same action as "SaveCheckBoxState".

I've tried adding the "SaveCheckBoxState" to the onclick event declaration in the checkboxes, but when run, it simply tells me that the method is undefined. It doesn't exist in the parent page, and I don't think I should have to make an event for the parent page to pass the click to. It seems to me this should be all self contained within the custom control. Does anyone know how I can acheive this? Here is the code for the gridview OnPreRender event where the onclick event of the checkbox is set:

protected override void OnPreRender(EventArgs e)
{
// Do as usual
base.OnPreRender(e);
// Adjust each data row
foreach (GridViewRow r in Rows)
{
// Get the appropriate style object for the row
TableItemStyle style = GetRowStyleFromState(r.RowState);
// Retrieve the reference to the checkbox
CheckBox cb = (CheckBox)r.FindControl(InputCheckBoxField.CheckBoxID);
// Build the ID of the checkbox in the header
string headerCheckBoxID = String.Format(CheckBoxColumHeaderID, ClientID);
// Add script code to enable selection
cb.Attributes["onclick"] = String.Format("ApplyStyle(this, '{0}', '{1}', '{2}')",
SelectedRowStyle.CssClass,
style.CssClass,
headerCheckBoxID);
// Update the style of the checkbox if checked
if (cb.Checked)
{
r.BackColor = SelectedRowStyle.BackColor;
r.ForeColor = SelectedRowStyle.ForeColor;
r.Font.Bold = SelectedRowStyle.Font.Bold;
}
else
{
r.BackColor = style.BackColor;
r.ForeColor = style.ForeColor;
r.Font.Bold = style.Font.Bold;
}
}
}

View 1 Replies

Custom Server Controls :: Creating Multiple Buttons During Render?

Mar 17, 2010

I have a control that displays a list of comments. The comments are created in a loop. The problem is that I want to put a LinkButton at the end of each comment and change the CommanArgument of each button to the ID of the current comment.

When I put the Linkbutton in the CreateChildControls method and then add the CommandArgument in the Render loop, the button works, but the argument is blank. When I put the code that's in the CreateChildControls method inside of the loop, I don't get an error, but nothing happens when the button is clicked.

Below is the relevent code ...

[Code]....

View 1 Replies

Custom Server Controls :: Custom Control's Constructor / User To Set That variable In The Properties Window After They Drag The Control Onto A Form?

Mar 4, 2010

I have a custom control which inherit from the Table class and in the constructor, it takes a an integer as an argument. There is no empty constructor.

Is there a way for the user to set that variable in the properties window after they drag the control onto a form.

I know some .NET controls, you can set the source for the parameter to different things like another control's property, QueryString using just the properties window.

Right now, I have to create the control dynamically. I read the query string and then created the object.

View 1 Replies

Custom Server Controls :: Custom Server Control Rendering Method In Multiple Class?

May 17, 2010

I am creating custom server control. I have two classes in project. One is main class that render control and another will be used to render content based on condition.I just want to know how to render content from other classes in main class.For example. This isjust an example.My main class code

[Code]....

My TopLeftPane class

[Code]....

My page code on page load event

[Code]....

When I run the page, Header title always getting null. This is a just sample code. I will have more than 20 classes so I dont want to write a code in main class to render whole control.I hope all of you understand my problem.

View 3 Replies

Custom Server Controls :: Paging And Sorting Gridview Custom Control Inside Of A Wizard Control?

Dec 24, 2010

here's a situation and I would appreciate your response.

I have programmatically created the Wizard control:

Page_Load(obj s, evargs e)
{
Wizard ClaimDetailWizard = new Wizard();
foreach(int item in selectedItems)
{
//create new step
//added custom control to new step
//add step to wizard
}
//added wizard to a placeholder on a page
}

Based on List I get from Session i added new steps to my wizard To each step I had added a custom control

Each custom control in tern contains another custom Gridview Control in it.

So here's the problem when the page loads for example for two steps. All is good Wizard does what it's supposed to do.

But when I try to use sorting or paging in that custom Gridview. Somehow it displays the gridview I should see in the next step of the wizard.

Also what I'm noticing through debugging. Is that when I press next in the wizard I go back to the original page where I do all of the code specified above, and it recreates the wizzard. But it goes to the next step. Is this the way wizard supposed to work? Just doesn't seem very efficient.

View 1 Replies

Custom Control That Outputs Multiple Hyperlinks?

Sep 1, 2010

I have a custom control which is rendered as a hyperlink:

Public Class TestControl
Inherits System.Web.UI.WebControls.WebControl
Implements IPostBackEventHandler
Public Sub RaisePostBackEvent(ByVal eventArgument As String) Implements System.Web.UI.IPostBackEventHandler.RaisePostBackEvent
Trace.WriteLine("Hyperlink 1 clicked")
End Sub

Protected Overrides Sub Render(ByVal writer As System.Web.UI.HtmlTextWriter)
writer.WriteLine("<a href=""{0}"" id=""{1}"">Hyperlink 1</a>", _
Page.ClientScript.GetPostBackClientHyperlink(Me, "Hyperlink 1"), _
Me.ClientID)
End Sub
End Class

This works fine. It also works nicely when put inside an UpdatePanel: Only the UpdatePanel is refreshed, no full postback is performed.

Now I would like to output a second hyperlink in the Render method. If I use the same id (Me.ClientID), everything works nicely, but this obviously results in broken HTML (no two controls are allows to have the same id attribute). If I use different client IDs (like Me.ClientID & "_1" and Me.ClientID & "_2"), a full postback is performed when the hyperlinks are clicked.

Is there some way to tell ASP.NET AJAX: "All postbacks of the following client IDs should be done asynchronously: ..."?

View 1 Replies

Custom Server Controls :: Access Multiple Header Rows Of The Gridview In Render Method?

Oct 22, 2010

I have extended a gridview to add an additional header with following two hyperlink controls "Select All" and "Clear All". These will operate on checkboxes in the data rows of the grid. I hide the column headers as I only want to show one column with checkboxes and "Select/Clear All" links. Everything is working as expected. Now, I wanted to add a scrollbar to my grid control, I did add the scroll bar using div but what it does is, it includes the "Select All and Clear All" links aswell. I only need to add the scrollbar to datarows and not to the header.I am trying to extend my control to include hte scrollbar by adding div during Render function. But how will I determine or loop through header rows? How will i get the header row with hyperlinks that I created above?? In Render if I do this.HeaderRow, it gets the original column header and not the custom header.

View 1 Replies

Custom Server Controls :: Add This Control To The Page,an Alert To Check The Text Value Of The Custom Control?

Dec 20, 2010

created a Custom Textbox Control that is intended to be a "masked date" textbox, so that I can handle different ways a user might enter in a date and make it work no matter what.I did this by creating a custom control with 3 separate Textboxes one for month,one for day one for year,then do some handling for different things that could be entered and it would all work.

The problem I am having is,when I add this control to the page,if I do an alert to check the Text value of the custom control it just gives me "[ServerControl1]" even if I enter in a date.

I tried doing an AutoPostback after entering so that it would refesh the Viewstate to have the values of the textboxes but the control doesnt seem to actually postback, even though I have it enabled.accessing the Textbox value after someoen
has entered a date?first custom control I have created and have been using google.

My Server Control Code is as follows:

[Code]...

View 1 Replies

Is It Possible To Have Multiple <template> Areas Defined In A Custom Control

Mar 2, 2011

I currently have:

<uc:MyControl ...>
<Template>
</Template>
</uc:Mycontrol>
I would like
<uc:MyControl ...>
<FishBiscuit>
html
</FishBiscuit>
<FishBiscuit>
html
</FishBiscuit>
<FishBiscuit>
html
</FishBiscuit>
<FishBiscuit>
html
</FishBiscuit>

However I'm not sure if it's possible, or how to wire it up if it is.

View 2 Replies

Forms Data Controls :: Possible To Output Collections Of Arrays Through Control?

Nov 17, 2010

Using VB.net: I have several collections, each collection has several items and each item has several 1-d arrays (all the same length). Is it possible to print each one of these arrays through an ASP Control?

View 2 Replies

Custom Server Controls :: Unable To Convert User Control To Custom Control

Oct 27, 2010

I have created a user control and am ready to convert it into a custom control. I am trying to follow:

[URL] the steps mentioned in the link.

I am not seeing Build / Publish Web Site option.

I am using VS 2008. I only see Publish User Control but it doesn't give all the settings mentioned below. When I do publish user control, it just copies the ascx file to the desired location. how can I convert the user control to custom control.

View 2 Replies

Accessing Property Value Of A Custom Control By Another Custom Control In Design-time

Oct 18, 2010

I created an Extender which has a custom property that drills down a list XML elements from an xml file, where users can select xml elements during design-time. This works perfectly fine. However, my code only has a hardcoded xml filename (source of the xml elements list) and I need to change this by maxing the xml file user-specified.

What I did is that I created another control (panel) which has a custom property that when clicked (through the ellipsis), it will allow a developer to select the xml file which is supposed to be the source xml file that the Extenders shall use. The filedialog from custom panel's property works perfectly fine.

However, my problem now is that when I drag-drop my Extender, I cannot find a way to get the property value of the custom Panel Control which contains the xml filename. I tried creating a static variable which I thought the custom controls can share but VS2010 is breaking.

View 4 Replies

Custom Server Controls :: Accessing User Control Over Multiple Projects?

Dec 10, 2010

I have a piece of code that is just HTML. It was previously created as a user control. Within the application i'm working with there are two seperate websites that are interlinked to make one website. There is a documents section where users do not need to login and a data section where users need to login. The design was implemented long before I was hired. My problem is I want to use the code from the documents website with the data website but I can't seem to register the control. I only one this piece of code in one place so when it is updated it doesn't have to be in multiple places. I tried setting "src=http://website/doc/doc.ascx" but this errors out saying

<%@ Register Src="http://website/doc/doc.ascx" TagName="docs" TagPrefix="temp" %>

Parser Error Message: The file '/documents/http://website/doc/doc.ascx' does not exist.

It adds the directory as part of the src. How can I have it point to this location http://website/doc/doc.ascx ?

View 7 Replies

Web Forms :: Custom Control Can Add Click In The Control Codebehind But Not When Using The Control

Feb 16, 2011

ive created my own custom control, now in the code behind of the custom control file i can add Name.Click += new EventHandler(name); but on the codebehind of the page where ive used the custom control i cannot, is there anyway i can regsiter it as an available attribute to add? my code below and on the image the test codebehind click is not available, how can i get it?

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
public partial class LargeButton : System.Web.UI.UserControl
{
public string JSFunc { get; set; }
public string SSFunc { get; set; }
public string ImgName { get; set; }
public string LinkText { get; set; }
protected void Page_Load(object sender, EventArgs e)
{
Link.Attributes.Add("onclick", "javascript:"+ JSFunc + ";");
Link.HRef = "javascript:;";
Link.Title = LinkText;
Img.Src = "~/App_Themes/" + Page.Theme + "/Images/Icons32/" + ImgName;
Img.Alt = LinkText;
//Link.ServerClick += new EventHandler(asd);
}
}
<%@ Control Language="C#" AutoEventWireup="true" CodeFile="LargeButton.ascx.cs" Inherits="LargeButton" %>
<a ID="Link" runat="server" class="MenuItemLarge" clientidmode="Static" >
<img ID="Img" align="center" runat="server"/>
<br />
<%= LinkText %>
</a>
<MB:LgButton runat="server" ID="Save"
JSFunc="Save(this)"
ImgName="save_32.png"
LinkText="Save" />

View 4 Replies

Custom Server Controls :: Use Custom Control/user Control?

Oct 12, 2010

I have 3 pages in each page there is a portion of page where it is common in all these three pages.Thought of making the common stuff as a separate control either User control/Custom control.Any suggestions on which one should i use custom/user control

View 2 Replies

Does A Composite Server Control(inc. User Control, Custom Server Control) Normally Encapsulate Css Properties?

Nov 7, 2010

If a composite server control normally encapsulate styling information inside, it is an example of code encapsulation and modularization. However if css properties are included inside the composite control, it is not ideal for code/styling separation and css code re-use principles. Now which consideration should be the main consideration?

View 2 Replies

Custom Server Controls :: User Template Control Or Custom Server Control?

Jul 22, 2010

I need to develop control (template or user) which must have subtags with some items.

For example :

<SomeControl runat="server" id="scTest">
<column1>TestColumn1</column1>
<column1>TestColumn1</column1>
<column1>TestColumn1</column1>
</SomeControl>

This control may contain some other web server controls such as GridView.I need explanation of experienced developers, how to do that - take me to the right way

View 3 Replies







Copyrights 2005-15 www.BigResource.com, All rights reserved