Ask a Question related to ASP.NET Data Grid Control, Design and Development.
-
Empire City #1
RadioButtonList In A DataGrid Cell - Can I find the selected button without editing the cell?
I have an ASP.NET form with a DataGrid and Button. I want to put a
RadioButtonList in a DataGrid cell. I bind it to an ArrayList which has a
ListItem in the cell. The display part works fine. I then check some boxes
and hit the submit button. I can't seem to get the value that is selected on
the RadioButton List. I don't want to use the EditTemplate thing I just want
to click on the radiobutton and submit the form. I also don't want to do
autopostbacks when I click on a button. Can this be done?
I looked at this link:
[url]http://support.microsoft.com/default.aspx?scid=kb;en-us;320707[/url]
I modified the code to work with a RadioButton List not just a RadioButton.
However from each RadioButton List when I cycle throug the GridItems it
tells me that one of the buttons in the list was selected but I can't seem
to get which one.
Here is my test:
using System;
using System.Text;
using System.Collections;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Web;
using System.Web.SessionState;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.HtmlControls;
namespace DataGridRadio
{
public class GridList
{
//Constructors
public GridList() {}
public GridList(
string description,
ArrayList bValue)
{
this.Description = description;
this.BValue = bValue;
}
//Properties
private string description;
private ArrayList bValue;
public string Description
{
get {return description;}
set {description = value;}
}
public ArrayList BValue
{
get {return bValue;}
set {bValue = value;}
}
}
public class WebForm1 : System.Web.UI.Page
{
protected System.Web.UI.WebControls.DataGrid DataGrid1;
protected System.Web.UI.WebControls.Label Message;
protected System.Web.UI.WebControls.Button Button1;
private void Page_Load(object sender, System.EventArgs e)
{
ArrayList blist1 = new ArrayList();
ListItem li1 = new ListItem("aaa", "111");
blist1.Add(li1);
ListItem li2 = new ListItem("bbb", "222");
blist1.Add(li2);
ListItem li3 = new ListItem("ccc", "333");
blist1.Add(li3);
ArrayList blist2 = new ArrayList();
ListItem li4 = new ListItem("ddd");
blist2.Add(li4);
ListItem li5 = new ListItem("eee");
blist2.Add(li5);
ListItem li6 = new ListItem("fff");
blist2.Add(li6);
ArrayList blist3 = new ArrayList();
ListItem li7 = new ListItem("ggg");
blist3.Add(li7);
ListItem li8 = new ListItem("hhh");
blist3.Add(li8);
ListItem li9 = new ListItem("iii");
blist3.Add(li9);
ArrayList alist1 = new ArrayList();
GridList gl1 = new GridList("aaaaaaaaaaa", blist1);
alist1.Add(gl1);
GridList gl2 = new GridList("bbbbbbbbbbb", blist2);
alist1.Add(gl2);
GridList gl3 = new GridList("ccccccccccc", blist3);
alist1.Add(gl3);
DataGrid1.DataSource = alist1;
DataGrid1.DataBind();
}
#region Web Form Designer generated code
override protected void OnInit(EventArgs e)
{
//
// CODEGEN: This call is required by the ASP.NET Web Form Designer.
//
InitializeComponent();
base.OnInit(e);
}
/// <summary>
/// Required method for Designer support - do not modify
/// the contents of this method with the code editor.
/// </summary>
private void InitializeComponent()
{
this.Button1.Click += new System.EventHandler(this.Button1_Click);
this.Load += new System.EventHandler(this.Page_Load);
}
#endregion
private void Button1_Click(object sender, System.EventArgs e)
{
StringBuilder gridSelections = new StringBuilder();
//Loop through each DataGridItem, and determine which CheckBox controls
//have been selected.
foreach(DataGridItem DemoGridItem in DataGrid1.Items)
{
RadioButtonList myRadioButtonList =
(RadioButtonList)DemoGridItem.Cells[1].Controls[1];
bool b4 = myRadioButtonList.Items[1].Selected;
int b1;
b1 = myRadioButtonList.SelectedIndex;
ListItem b2 = new ListItem();
b2 = myRadioButtonList.SelectedItem;
int b3 = 2;
}
}
}
}
Empire City Guest
-
DataGrid cell editing
I have set my DataGrid as editable and some column editable and others not. For some reason some cells blank out when I edit the cell contents... -
dataGrid cell value unable to find
Does anyone know how to get the data value out of a cell within the dataGrid? It seems pretty simple, just pass the column and row you want but I... -
How to set cell background based on cell value when datagrid is displayed
I would like to check a datagrid cell value, and change the color of the cell background, when a datagrid is displayed. I want to do this as early... -
DataGrid Cell with Image Button In It
I create a datagrid and at runtime I add an ImageButton to certain cells(e.Item.Cells.Controls.Add(imgbutton)). Now when I click on a row that... -
--- retrieving text from a selected datagrid cell ---
this was working Dim szMsgNumber = db_grid.SelectedItem.Cells(0).Text until i changed the first column (at index 0) to a ASP:ButtonColumn... -
Michael Tkachev #2
Re: RadioButtonList In A DataGrid Cell - Can I find the selected button without editing the cell?
RadioButtinlist has the following properties:
SelectedItem,
SelectedValue,
SelectedIndex
You can use these properties.
Bye
Michael
"Empire City" <a@b.com> wrote in message
news:uq%jc.30263$mX.10902882@twister.nyc.rr.com...on> I have an ASP.NET form with a DataGrid and Button. I want to put a
> RadioButtonList in a DataGrid cell. I bind it to an ArrayList which has a
> ListItem in the cell. The display part works fine. I then check some boxes
> and hit the submit button. I can't seem to get the value that is selectedwant> the RadioButton List. I don't want to use the EditTemplate thing I justRadioButton.> to click on the radiobutton and submit the form. I also don't want to do
> autopostbacks when I click on a button. Can this be done?
>
> I looked at this link:
> [url]http://support.microsoft.com/default.aspx?scid=kb;en-us;320707[/url]
>
> I modified the code to work with a RadioButton List not just a> However from each RadioButton List when I cycle throug the GridItems it
> tells me that one of the buttons in the list was selected but I can't seem
> to get which one.
>
> Here is my test:
>
> using System;
>
> using System.Text;
>
> using System.Collections;
>
> using System.ComponentModel;
>
> using System.Data;
>
> using System.Drawing;
>
> using System.Web;
>
> using System.Web.SessionState;
>
> using System.Web.UI;
>
> using System.Web.UI.WebControls;
>
> using System.Web.UI.HtmlControls;
>
> namespace DataGridRadio
>
> {
>
> public class GridList
>
> {
>
> //Constructors
>
> public GridList() {}
>
> public GridList(
>
> string description,
>
> ArrayList bValue)
>
> {
>
> this.Description = description;
>
> this.BValue = bValue;
>
> }
>
> //Properties
>
> private string description;
>
> private ArrayList bValue;
>
> public string Description
>
> {
>
> get {return description;}
>
> set {description = value;}
>
> }
>
> public ArrayList BValue
>
> {
>
> get {return bValue;}
>
> set {bValue = value;}
>
> }
>
> }
>
> public class WebForm1 : System.Web.UI.Page
>
> {
>
> protected System.Web.UI.WebControls.DataGrid DataGrid1;
>
> protected System.Web.UI.WebControls.Label Message;
>
> protected System.Web.UI.WebControls.Button Button1;
>
>
> private void Page_Load(object sender, System.EventArgs e)
>
> {
>
> ArrayList blist1 = new ArrayList();
>
> ListItem li1 = new ListItem("aaa", "111");
>
> blist1.Add(li1);
>
> ListItem li2 = new ListItem("bbb", "222");
>
> blist1.Add(li2);
>
> ListItem li3 = new ListItem("ccc", "333");
>
> blist1.Add(li3);
>
>
> ArrayList blist2 = new ArrayList();
>
> ListItem li4 = new ListItem("ddd");
>
> blist2.Add(li4);
>
> ListItem li5 = new ListItem("eee");
>
> blist2.Add(li5);
>
> ListItem li6 = new ListItem("fff");
>
> blist2.Add(li6);
>
> ArrayList blist3 = new ArrayList();
>
> ListItem li7 = new ListItem("ggg");
>
> blist3.Add(li7);
>
> ListItem li8 = new ListItem("hhh");
>
> blist3.Add(li8);
>
> ListItem li9 = new ListItem("iii");
>
> blist3.Add(li9);
>
>
>
> ArrayList alist1 = new ArrayList();
>
> GridList gl1 = new GridList("aaaaaaaaaaa", blist1);
>
> alist1.Add(gl1);
>
> GridList gl2 = new GridList("bbbbbbbbbbb", blist2);
>
> alist1.Add(gl2);
>
> GridList gl3 = new GridList("ccccccccccc", blist3);
>
> alist1.Add(gl3);
>
> DataGrid1.DataSource = alist1;
>
> DataGrid1.DataBind();
>
> }
>
> #region Web Form Designer generated code
>
> override protected void OnInit(EventArgs e)
>
> {
>
> //
>
> // CODEGEN: This call is required by the ASP.NET Web Form Designer.
>
> //
>
> InitializeComponent();
>
> base.OnInit(e);
>
> }
>
>
> /// <summary>
>
> /// Required method for Designer support - do not modify
>
> /// the contents of this method with the code editor.
>
> /// </summary>
>
> private void InitializeComponent()
>
> {
>
> this.Button1.Click += new System.EventHandler(this.Button1_Click);
>
> this.Load += new System.EventHandler(this.Page_Load);
>
> }
>
> #endregion
>
> private void Button1_Click(object sender, System.EventArgs e)
>
> {
>
> StringBuilder gridSelections = new StringBuilder();
>
> //Loop through each DataGridItem, and determine which CheckBox controls
>
> //have been selected.
>
> foreach(DataGridItem DemoGridItem in DataGrid1.Items)
>
> {
>
> RadioButtonList myRadioButtonList =
>
> (RadioButtonList)DemoGridItem.Cells[1].Controls[1];
>
> bool b4 = myRadioButtonList.Items[1].Selected;
>
> int b1;
>
> b1 = myRadioButtonList.SelectedIndex;
>
> ListItem b2 = new ListItem();
>
> b2 = myRadioButtonList.SelectedItem;
>
> int b3 = 2;
>
> }
>
> }
>
> }
>
> }
>
>
>
>
>
>
>
>
>
>
>
>
>
>
Michael Tkachev Guest
-
Empire City #3
Re: RadioButtonList In A DataGrid Cell - Can I find the selected button without editing the cell?
For some reason SelecteItem, etc. come up as nothing or null. If you look at
the line in my code belowI tried all sorts of different settings and when it's in a DataGrid it only> bool b4 = myRadioButtonList.Items[1].Selected;
seems to return selected if one of the buttons in the list is selected.
Trying all the suggested things below they all come back empty and I can't
seem to get the SelectedItem. I've worked with RadioButtonLists a lot but
not in the DataGrid.
"Michael Tkachev" <m_tkachev@hotmail.com> wrote in message
news:unS$ycdLEHA.2148@TK2MSFTNGP09.phx.gbl...a> RadioButtinlist has the following properties:
>
> SelectedItem,
>
> SelectedValue,
>
> SelectedIndex
>
> You can use these properties.
>
> Bye
>
> Michael
>
> "Empire City" <a@b.com> wrote in message
> news:uq%jc.30263$mX.10902882@twister.nyc.rr.com...> > I have an ASP.NET form with a DataGrid and Button. I want to put a
> > RadioButtonList in a DataGrid cell. I bind it to an ArrayList which hasboxes> > ListItem in the cell. The display part works fine. I then check someselected> > and hit the submit button. I can't seem to get the value that isseem> on> want> > the RadioButton List. I don't want to use the EditTemplate thing I just> RadioButton.> > to click on the radiobutton and submit the form. I also don't want to do
> > autopostbacks when I click on a button. Can this be done?
> >
> > I looked at this link:
> > [url]http://support.microsoft.com/default.aspx?scid=kb;en-us;320707[/url]
> >
> > I modified the code to work with a RadioButton List not just a> > However from each RadioButton List when I cycle throug the GridItems it
> > tells me that one of the buttons in the list was selected but I can't>> > to get which one.
> >
> > Here is my test:
> >
> > using System;
> >
> > using System.Text;
> >
> > using System.Collections;
> >
> > using System.ComponentModel;
> >
> > using System.Data;
> >
> > using System.Drawing;
> >
> > using System.Web;
> >
> > using System.Web.SessionState;
> >
> > using System.Web.UI;
> >
> > using System.Web.UI.WebControls;
> >
> > using System.Web.UI.HtmlControls;
> >
> > namespace DataGridRadio
> >
> > {
> >
> > public class GridList
> >
> > {
> >
> > //Constructors
> >
> > public GridList() {}
> >
> > public GridList(
> >
> > string description,
> >
> > ArrayList bValue)
> >
> > {
> >
> > this.Description = description;
> >
> > this.BValue = bValue;
> >
> > }
> >
> > //Properties
> >
> > private string description;
> >
> > private ArrayList bValue;
> >
> > public string Description
> >
> > {
> >
> > get {return description;}
> >
> > set {description = value;}
> >
> > }
> >
> > public ArrayList BValue
> >
> > {
> >
> > get {return bValue;}
> >
> > set {bValue = value;}
> >
> > }
> >
> > }
> >
> > public class WebForm1 : System.Web.UI.Page
> >
> > {
> >
> > protected System.Web.UI.WebControls.DataGrid DataGrid1;
> >
> > protected System.Web.UI.WebControls.Label Message;
> >
> > protected System.Web.UI.WebControls.Button Button1;
> >
> >
> > private void Page_Load(object sender, System.EventArgs e)
> >
> > {
> >
> > ArrayList blist1 = new ArrayList();
> >
> > ListItem li1 = new ListItem("aaa", "111");
> >
> > blist1.Add(li1);
> >
> > ListItem li2 = new ListItem("bbb", "222");
> >
> > blist1.Add(li2);
> >
> > ListItem li3 = new ListItem("ccc", "333");
> >
> > blist1.Add(li3);
> >
> >
> > ArrayList blist2 = new ArrayList();
> >
> > ListItem li4 = new ListItem("ddd");
> >
> > blist2.Add(li4);
> >
> > ListItem li5 = new ListItem("eee");
> >
> > blist2.Add(li5);
> >
> > ListItem li6 = new ListItem("fff");
> >
> > blist2.Add(li6);
> >
> > ArrayList blist3 = new ArrayList();
> >
> > ListItem li7 = new ListItem("ggg");
> >
> > blist3.Add(li7);
> >
> > ListItem li8 = new ListItem("hhh");
> >
> > blist3.Add(li8);
> >
> > ListItem li9 = new ListItem("iii");
> >
> > blist3.Add(li9);
> >
> >
> >
> > ArrayList alist1 = new ArrayList();
> >
> > GridList gl1 = new GridList("aaaaaaaaaaa", blist1);
> >
> > alist1.Add(gl1);
> >
> > GridList gl2 = new GridList("bbbbbbbbbbb", blist2);
> >
> > alist1.Add(gl2);
> >
> > GridList gl3 = new GridList("ccccccccccc", blist3);
> >
> > alist1.Add(gl3);
> >
> > DataGrid1.DataSource = alist1;
> >
> > DataGrid1.DataBind();
> >
> > }
> >
> > #region Web Form Designer generated code
> >
> > override protected void OnInit(EventArgs e)
> >
> > {
> >
> > //
> >
> > // CODEGEN: This call is required by the ASP.NET Web Form Designer.
> >
> > //
> >
> > InitializeComponent();
> >
> > base.OnInit(e);
> >
> > }
> >
> >
> > /// <summary>
> >
> > /// Required method for Designer support - do not modify
> >
> > /// the contents of this method with the code editor.
> >
> > /// </summary>
> >
> > private void InitializeComponent()
> >
> > {
> >
> > this.Button1.Click += new System.EventHandler(this.Button1_Click);
> >
> > this.Load += new System.EventHandler(this.Page_Load);
> >
> > }
> >
> > #endregion
> >
> > private void Button1_Click(object sender, System.EventArgs e)
> >
> > {
> >
> > StringBuilder gridSelections = new StringBuilder();
> >
> > //Loop through each DataGridItem, and determine which CheckBox controls
> >
> > //have been selected.
> >
> > foreach(DataGridItem DemoGridItem in DataGrid1.Items)
> >
> > {
> >
> > RadioButtonList myRadioButtonList =
> >
> > (RadioButtonList)DemoGridItem.Cells[1].Controls[1];
> >
> > bool b4 = myRadioButtonList.Items[1].Selected;
> >
> > int b1;
> >
> > b1 = myRadioButtonList.SelectedIndex;
> >
> > ListItem b2 = new ListItem();
> >
> > b2 = myRadioButtonList.SelectedItem;
> >
> > int b3 = 2;
> >
> > }
> >
> > }
> >
> > }
> >
> > }
> >
> >
> >
> >
> >
> >
> >
> >
> >
> >
> >
> >
> >
> >
>
Empire City Guest
-
Empire City #4
Re: RadioButtonList In A DataGrid Cell - Can I find the selected button without editing the cell?
Hi Michael
Thanks for your help. A bit of persistance and I figured it out. I did not
properly set the DataTextField and DataValueField properties of the
RadioButtonList in the DataGrid item template. I looked at the source output
and saw the value="" and that told me I need to set that.
Thank you.
"Empire City" <a@b.com> wrote in message
news:Th6kc.69712$WA4.54674@twister.nyc.rr.com...at> For some reason SelecteItem, etc. come up as nothing or null. If you lookonly> the line in my code below> I tried all sorts of different settings and when it's in a DataGrid it> > bool b4 = myRadioButtonList.Items[1].Selected;has> seems to return selected if one of the buttons in the list is selected.
> Trying all the suggested things below they all come back empty and I can't
> seem to get the SelectedItem. I've worked with RadioButtonLists a lot but
> not in the DataGrid.
>
> "Michael Tkachev" <m_tkachev@hotmail.com> wrote in message
> news:unS$ycdLEHA.2148@TK2MSFTNGP09.phx.gbl...> > RadioButtinlist has the following properties:
> >
> > SelectedItem,
> >
> > SelectedValue,
> >
> > SelectedIndex
> >
> > You can use these properties.
> >
> > Bye
> >
> > Michael
> >
> > "Empire City" <a@b.com> wrote in message
> > news:uq%jc.30263$mX.10902882@twister.nyc.rr.com...> > > I have an ASP.NET form with a DataGrid and Button. I want to put a
> > > RadioButtonList in a DataGrid cell. I bind it to an ArrayList whichjust> a> boxes> > > ListItem in the cell. The display part works fine. I then check some> selected> > > and hit the submit button. I can't seem to get the value that is> > on> > > the RadioButton List. I don't want to use the EditTemplate thing Ido> > want> > > to click on the radiobutton and submit the form. I also don't want toit> > RadioButton.> > > autopostbacks when I click on a button. Can this be done?
> > >
> > > I looked at this link:
> > > [url]http://support.microsoft.com/default.aspx?scid=kb;en-us;320707[/url]
> > >
> > > I modified the code to work with a RadioButton List not just a> > > However from each RadioButton List when I cycle throug the GridItemscontrols> seem> > > tells me that one of the buttons in the list was selected but I can't> > > to get which one.
> > >
> > > Here is my test:
> > >
> > > using System;
> > >
> > > using System.Text;
> > >
> > > using System.Collections;
> > >
> > > using System.ComponentModel;
> > >
> > > using System.Data;
> > >
> > > using System.Drawing;
> > >
> > > using System.Web;
> > >
> > > using System.Web.SessionState;
> > >
> > > using System.Web.UI;
> > >
> > > using System.Web.UI.WebControls;
> > >
> > > using System.Web.UI.HtmlControls;
> > >
> > > namespace DataGridRadio
> > >
> > > {
> > >
> > > public class GridList
> > >
> > > {
> > >
> > > //Constructors
> > >
> > > public GridList() {}
> > >
> > > public GridList(
> > >
> > > string description,
> > >
> > > ArrayList bValue)
> > >
> > > {
> > >
> > > this.Description = description;
> > >
> > > this.BValue = bValue;
> > >
> > > }
> > >
> > > //Properties
> > >
> > > private string description;
> > >
> > > private ArrayList bValue;
> > >
> > > public string Description
> > >
> > > {
> > >
> > > get {return description;}
> > >
> > > set {description = value;}
> > >
> > > }
> > >
> > > public ArrayList BValue
> > >
> > > {
> > >
> > > get {return bValue;}
> > >
> > > set {bValue = value;}
> > >
> > > }
> > >
> > > }
> > >
> > > public class WebForm1 : System.Web.UI.Page
> > >
> > > {
> > >
> > > protected System.Web.UI.WebControls.DataGrid DataGrid1;
> > >
> > > protected System.Web.UI.WebControls.Label Message;
> > >
> > > protected System.Web.UI.WebControls.Button Button1;
> > >
> > >
> > > private void Page_Load(object sender, System.EventArgs e)
> > >
> > > {
> > >
> > > ArrayList blist1 = new ArrayList();
> > >
> > > ListItem li1 = new ListItem("aaa", "111");
> > >
> > > blist1.Add(li1);
> > >
> > > ListItem li2 = new ListItem("bbb", "222");
> > >
> > > blist1.Add(li2);
> > >
> > > ListItem li3 = new ListItem("ccc", "333");
> > >
> > > blist1.Add(li3);
> > >
> > >
> > > ArrayList blist2 = new ArrayList();
> > >
> > > ListItem li4 = new ListItem("ddd");
> > >
> > > blist2.Add(li4);
> > >
> > > ListItem li5 = new ListItem("eee");
> > >
> > > blist2.Add(li5);
> > >
> > > ListItem li6 = new ListItem("fff");
> > >
> > > blist2.Add(li6);
> > >
> > > ArrayList blist3 = new ArrayList();
> > >
> > > ListItem li7 = new ListItem("ggg");
> > >
> > > blist3.Add(li7);
> > >
> > > ListItem li8 = new ListItem("hhh");
> > >
> > > blist3.Add(li8);
> > >
> > > ListItem li9 = new ListItem("iii");
> > >
> > > blist3.Add(li9);
> > >
> > >
> > >
> > > ArrayList alist1 = new ArrayList();
> > >
> > > GridList gl1 = new GridList("aaaaaaaaaaa", blist1);
> > >
> > > alist1.Add(gl1);
> > >
> > > GridList gl2 = new GridList("bbbbbbbbbbb", blist2);
> > >
> > > alist1.Add(gl2);
> > >
> > > GridList gl3 = new GridList("ccccccccccc", blist3);
> > >
> > > alist1.Add(gl3);
> > >
> > > DataGrid1.DataSource = alist1;
> > >
> > > DataGrid1.DataBind();
> > >
> > > }
> > >
> > > #region Web Form Designer generated code
> > >
> > > override protected void OnInit(EventArgs e)
> > >
> > > {
> > >
> > > //
> > >
> > > // CODEGEN: This call is required by the ASP.NET Web Form Designer.
> > >
> > > //
> > >
> > > InitializeComponent();
> > >
> > > base.OnInit(e);
> > >
> > > }
> > >
> > >
> > > /// <summary>
> > >
> > > /// Required method for Designer support - do not modify
> > >
> > > /// the contents of this method with the code editor.
> > >
> > > /// </summary>
> > >
> > > private void InitializeComponent()
> > >
> > > {
> > >
> > > this.Button1.Click += new System.EventHandler(this.Button1_Click);
> > >
> > > this.Load += new System.EventHandler(this.Page_Load);
> > >
> > > }
> > >
> > > #endregion
> > >
> > > private void Button1_Click(object sender, System.EventArgs e)
> > >
> > > {
> > >
> > > StringBuilder gridSelections = new StringBuilder();
> > >
> > > //Loop through each DataGridItem, and determine which CheckBox>> >> > >
> > > //have been selected.
> > >
> > > foreach(DataGridItem DemoGridItem in DataGrid1.Items)
> > >
> > > {
> > >
> > > RadioButtonList myRadioButtonList =
> > >
> > > (RadioButtonList)DemoGridItem.Cells[1].Controls[1];
> > >
> > > bool b4 = myRadioButtonList.Items[1].Selected;
> > >
> > > int b1;
> > >
> > > b1 = myRadioButtonList.SelectedIndex;
> > >
> > > ListItem b2 = new ListItem();
> > >
> > > b2 = myRadioButtonList.SelectedItem;
> > >
> > > int b3 = 2;
> > >
> > > }
> > >
> > > }
> > >
> > > }
> > >
> > > }
> > >
> > >
> > >
> > >
> > >
> > >
> > >
> > >
> > >
> > >
> > >
> > >
> > >
> > >
> >
>
Empire City Guest



Reply With Quote

