473,320 Members | 2,088 Online
Bytes | Software Development & Data Engineering Community
Post Job

Home Posts Topics Members FAQ

Join Bytes to post your question to a community of 473,320 software developers and data experts.

selecting radio button in datalist

i am selectin some data from database and through reader showing it in
datalist as above now for radio buttons i have single column which returns
1,2,3 and according to that i want one of above radio button to be
preselected in this datalist how can i do that
doing something like this
but this gives error "The type or namespace name 'rdbtn' could not be found
(are you missing a using directive or an assembly reference?)"
as its in datalist

<table width="100%">
<tr width="100%">
<td width="25%"><%#DataBinder.Eval(Container.DataItem, "FName")%></td>
<td width="25%"><input type=text name="txtPass"
value='<%#DataBinder.Eval(Container.DataItem,"Pass wd")%>'></td>
<td width="45%" align="left">

<input type=hidden name="txtPerm"
value='<%#DataBinder.Eval(Container.DataItem,"Perm ission")%>'>
<%string x=Request.Form.Get("txtPerm");%>
<% if(x=="1")
{
rdbtn.SelectedValue="1";
}
else if(x=="2")
{
rdbtn.SelectedValue="2";
}
else if(x=="3")
{
rdbtn.SelectedValue="3";
}%>
</td>
<td width="5%" align="left">
</td>
</tr>
</table>
Apr 25 '06 #1
16 12122
Hi Vikas,

Welcome to the ASPNET newsgroup.

From your description, I understand you're developing asp.net web page
which use a datalist control to populate some datas from database. And the
datalist's template contains some radiobuttons, the radiobutton's data is
populated from data object through databinding. Currently you're
encountering some problem on preselect the certain radio button according
to the data object's certain field. correct?

Based on my experience, for such scenario, you can consider either using
helper function or the ItemDataBound event to customize the controls in
template:

e.g:

1. we can define a helper function and use it for setting the radiobutton's
selection status
<asp:RadioButton ID="rb1" runat="server" GroupName="gp1" Checked='<%#
SetChecked("rb1", Container.DataItem) %>' />
<asp:RadioButton ID="rb2" runat="server" GroupName="gp1" Checked='<%#
SetChecked("rb2", Container.DataItem) %>' />
========a protected function in codebehind page class==========
protected bool SetChecked(string rbid, object obj)
{
DataRowView drv = obj as DataRowView;

if (rbid == "rb1")
{
return ((int)(drv[0]) % 2 == 0);
}

return !((int)(drv[0]) % 2 == 0);

}

2. Also, we can use "ItemDataBound" event to get the radioButton control in
the template and manipulate them:

protected void DataList1_ItemDataBound(object sender,
DataListItemEventArgs e)
{
DataRowView drv = e.Item.DataItem as DataRowView;

RadioButton rb1 = (RadioButton)e.Item.FindControl("rb1");
RadioButton rb2 = (RadioButton)e.Item.FindControl("rb2");

// code to set check status....

}
BTW, in the code snippetd you posted, I found that you're using the inline
data rendering expression( <% xxxxx %> ) in the DataList's template, I
don't think this is the recommended means, and <% %> is supposed to be used
in the top page template, and in databound control's template, we're always
recommended to use databinding expression( <%# %>)

Hope this helps.

Regards,

Steven Cheng
Microsoft Online Community Support
==================================================

When responding to posts, please "Reply to Group" via your newsreader so
that others may learn and benefit from your issue.

==================================================
This posting is provided "AS IS" with no warranties, and confers no rights.

Get Secure! www.microsoft.com/security
(This posting is provided "AS IS", with no warranties, and confers no
rights.)

Apr 26 '06 #2
Hi thanks for reply yes u got the problem correct
i want to use
ItemDataBound event to customize the controls in
template

i had coded like this

<ItemTemplate>
<table width="100%">
<tr width="100%">
<td
width="25%"><%#DataBinder.Eval(Container.DataItem, "FName")%></td>
<td width="25%"><input type=text name="txtPass"
value='<%#DataBinder.Eval(Container.DataItem,"Pass wd")%>'></td>
<td width="45%" align="left">
<asp:RadioButton ID="rb1" runat="server" GroupName="gp1"
/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;& nbsp;&nbsp;
<asp:RadioButton ID="rb2" runat="server" GroupName="gp1"
/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;& nbsp;&nbsp;&nbsp;
<asp:RadioButton ID="rb3" Runat="server" GroupName="gp1"
/>

</td>
<td width="5%" align="left">
<asp:Button ID="EditSubuser" Text="Edit"
Runat="server"></asp:Button></td>
</tr>
</table>
</ItemTemplate>

and in code behind
protected void listUser_ItemDataBound(object sender,
System.Web.UI.WebControls.DataListItemEventArgs e)

{

DataRowView drv = e.Item.DataItem as DataRowView;

RadioButton rb1 = (RadioButton)e.Item.FindControl("rb1");

RadioButton rb2 = (RadioButton)e.Item.FindControl("rb2");

RadioButton rb3=(RadioButton)e.Item.FindControl("rb3");
}

its working fine till here
but how will i select one of these three now
the code below selects 1,2 or 3 from permission colomn
how will i take value from permission coloumn and will set one of these
three rd1 or rd2 or rd3

string strsql="select
Userinfo.UID,Userinfo.FName,Userinfo.Permission,Us erPassword.Passwd from
Userinfo,UserPassword where Userinfo.UID=UserPassword.UID and
Userinfo.ParentID="+ userid;

Database db=DatabaseFactory.CreateDatabase();

DBCommandWrapper cmd=db.GetSqlStringCommandWrapper(strsql);

dr=db.ExecuteReader(cmd);

listUser.DataSource=dr;

listUser.DataBind();

dr.Close();

"Steven Cheng[MSFT]" <st*****@online.microsoft.com> wrote in message
news:lU**************@TK2MSFTNGXA01.phx.gbl...
Hi Vikas,

Welcome to the ASPNET newsgroup.

From your description, I understand you're developing asp.net web page
which use a datalist control to populate some datas from database. And the
datalist's template contains some radiobuttons, the radiobutton's data is
populated from data object through databinding. Currently you're
encountering some problem on preselect the certain radio button according
to the data object's certain field. correct?

Based on my experience, for such scenario, you can consider either using
helper function or the ItemDataBound event to customize the controls in
template:

e.g:

1. we can define a helper function and use it for setting the
radiobutton's
selection status
<asp:RadioButton ID="rb1" runat="server" GroupName="gp1" Checked='<%#
SetChecked("rb1", Container.DataItem) %>' />
<asp:RadioButton ID="rb2" runat="server" GroupName="gp1" Checked='<%#
SetChecked("rb2", Container.DataItem) %>' />
========a protected function in codebehind page class==========
protected bool SetChecked(string rbid, object obj)
{
DataRowView drv = obj as DataRowView;

if (rbid == "rb1")
{
return ((int)(drv[0]) % 2 == 0);
}

return !((int)(drv[0]) % 2 == 0);

}

2. Also, we can use "ItemDataBound" event to get the radioButton control
in
the template and manipulate them:

protected void DataList1_ItemDataBound(object sender,
DataListItemEventArgs e)
{
DataRowView drv = e.Item.DataItem as DataRowView;

RadioButton rb1 = (RadioButton)e.Item.FindControl("rb1");
RadioButton rb2 = (RadioButton)e.Item.FindControl("rb2");

// code to set check status....

}
BTW, in the code snippetd you posted, I found that you're using the inline
data rendering expression( <% xxxxx %> ) in the DataList's template, I
don't think this is the recommended means, and <% %> is supposed to be
used
in the top page template, and in databound control's template, we're
always
recommended to use databinding expression( <%# %>)

Hope this helps.

Regards,

Steven Cheng
Microsoft Online Community Support
==================================================

When responding to posts, please "Reply to Group" via your newsreader so
that others may learn and benefit from your issue.

==================================================
This posting is provided "AS IS" with no warranties, and confers no
rights.

Get Secure! www.microsoft.com/security
(This posting is provided "AS IS", with no warranties, and confers no
rights.)

Apr 26 '06 #3
Thanks for your response Vikas,

Since you've got the DataRowView object in ItemDataBound event, then you
can query the certain column(select through dataReader in database) value
from it, e.g:

=================================
protected void listUser_ItemDataBound(object sender,
System.Web.UI.WebControls.DataListItemEventArgs e)

{

DataRowView drv = e.Item.DataItem as DataRowView;
int selval = (int)drv["selectvalue"];

RadioButton rb1 = (RadioButton)e.Item.FindControl("rb1");

RadioButton rb2 = (RadioButton)e.Item.FindControl("rb2");

RadioButton rb3=(RadioButton)e.Item.FindControl("rb3");
}
====================

DataRowView is just somewhat like DataRow, you can access those database
column's value through index or name:

#DataRowView Class
http://msdn2.microsoft.com/en-us/lib...ew(VS.80).aspx

Then, you can set certain RadioButton's Checked property to false or true
based on the column's value.

Hope this helps. If you still have anything unclear, please feel free to
post here.

Regards,

Steven Cheng
Microsoft Online Community Support
==================================================

When responding to posts, please "Reply to Group" via your newsreader so
that others may learn and benefit from your issue.

==================================================
This posting is provided "AS IS" with no warranties, and confers no rights.

Get Secure! www.microsoft.com/security
(This posting is provided "AS IS", with no warranties, and confers no
rights.)




Apr 27 '06 #4
I had already tried thid code
protected void listUser_ItemDataBound(object sender,
System.Web.UI.WebControls.DataListItemEventArgs e)

{

DataRowView drv = e.Item.DataItem as DataRowView;

RadioButton rb1 = (RadioButton)e.Item.FindControl("rb1");

RadioButton rb2 = (RadioButton)e.Item.FindControl("rb2");

RadioButton rb3=(RadioButton)e.Item.FindControl("rb3");

int setperm = (int)drv["Permission"];
i am getting following error
--------------------------------------------------------------------------------
Object reference not set to an instance of an object.
Description: An unhandled exception occurred during the execution of the
current web request. Please review the stack trace for more information
about the error and where it originated in the code.

Exception Details: System.NullReferenceException: Object reference not set
to an instance of an object.

Source Error:
Line 80: RadioButton rb2 = (RadioButton)e.Item.FindControl("rb2");
Line 81: RadioButton rb3=(RadioButton)e.Item.FindControl("rb3");
Line 82: int setperm = (int)drv["Permission"];
Line 83:
Line 84:
Source File: d:\ankit\property\user\manageuser.aspx.cs Line: 82

Stack Trace:
[NullReferenceException: Object reference not set to an instance of an
object.]
property.user.manageuser.listUser_ItemDataBound(Ob ject sender,
DataListItemEventArgs e) in d:\ankit\property\user\manageuser.aspx.cs:82
System.Web.UI.WebControls.DataList.OnItemDataBound (DataListItemEventArgs
e)
System.Web.UI.WebControls.DataList.CreateItem(Int3 2 itemIndex,
ListItemType itemType, Boolean dataBind, Object dataItem)
System.Web.UI.WebControls.DataList.CreateControlHi erarchy(Boolean
useDataSource)
System.Web.UI.WebControls.BaseDataList.OnDataBindi ng(EventArgs e)
System.Web.UI.WebControls.BaseDataList.DataBind()
property.user.manageuser.Page_Load(Object sender, EventArgs e) in
d:\ankit\property\user\manageuser.aspx.cs:48
System.Web.UI.Control.OnLoad(EventArgs e)
System.Web.UI.Control.LoadRecursive()
System.Web.UI.Page.ProcessRequestMain()
and same error i get if i write rb1.Checked=true;
for rb1
"Steven Cheng[MSFT]" <st*****@online.microsoft.com> wrote in message
news:I7**************@TK2MSFTNGXA01.phx.gbl...
Thanks for your response Vikas,

Since you've got the DataRowView object in ItemDataBound event, then you
can query the certain column(select through dataReader in database) value
from it, e.g:

=================================
protected void listUser_ItemDataBound(object sender,
System.Web.UI.WebControls.DataListItemEventArgs e)

{

DataRowView drv = e.Item.DataItem as DataRowView;
int selval = (int)drv["selectvalue"];

RadioButton rb1 = (RadioButton)e.Item.FindControl("rb1");

RadioButton rb2 = (RadioButton)e.Item.FindControl("rb2");

RadioButton rb3=(RadioButton)e.Item.FindControl("rb3");
}
====================

DataRowView is just somewhat like DataRow, you can access those database
column's value through index or name:

#DataRowView Class
http://msdn2.microsoft.com/en-us/lib...ew(VS.80).aspx

Then, you can set certain RadioButton's Checked property to false or true
based on the column's value.

Hope this helps. If you still have anything unclear, please feel free to
post here.

Regards,

Steven Cheng
Microsoft Online Community Support
==================================================

When responding to posts, please "Reply to Group" via your newsreader so
that others may learn and benefit from your issue.

==================================================
This posting is provided "AS IS" with no warranties, and confers no
rights.

Get Secure! www.microsoft.com/security
(This posting is provided "AS IS", with no warranties, and confers no
rights.)



Apr 27 '06 #5
Thanks for your response Vikas,

So have you tried narrow down the Null reference exception to see which
object is the cause of the Null refrence exception. I guess it's the
certain column you try retrieving through the DataRowView... You can put
some code to check whether the certain column is null, like:

drv["columnname"] == null

Regards,

Steven Cheng
Microsoft Online Community Support
==================================================

When responding to posts, please "Reply to Group" via your newsreader so
that others may learn and benefit from your issue.

==================================================
This posting is provided "AS IS" with no warranties, and confers no rights.

Get Secure! www.microsoft.com/security
(This posting is provided "AS IS", with no warranties, and confers no
rights.)

Apr 28 '06 #6
Thanks for your response Vikas,

So have you tried narrow down the Null reference exception to see which
object is the cause of the Null refrence exception. I guess it's the
certain column you try retrieving through the DataRowView... You can put
some code to check whether the certain column is null, like:

drv["columnname"] == null

Regards,

Steven Cheng
Microsoft Online Community Support
==================================================

When responding to posts, please "Reply to Group" via your newsreader so
that others may learn and benefit from your issue.

==================================================
This posting is provided "AS IS" with no warranties, and confers no rights.

Get Secure! www.microsoft.com/security
(This posting is provided "AS IS", with no warranties, and confers no
rights.)

Apr 28 '06 #7
Thanks for reply Sir
I tried like this now
DataRowView drv = e.Item.DataItem as DataRowView;

RadioButton rb1 = (RadioButton)e.Item.FindControl("rb1");

RadioButton rb2 = (RadioButton)e.Item.FindControl("rb2");

RadioButton rb3=(RadioButton)e.Item.FindControl("rb3");

if(drv["Permission"] == null)

{

Response.Write("hell");

}

it gives error on line-if(drv["Permission"] == null

i checked it putting break pts it gives error on this if statement only

Object reference not set to an instance of an object.
Description: An unhandled exception occurred during the execution of the
current web request. Please review the stack trace for more information
about the error and where it originated in the code.

Exception Details: System.NullReferenceException: Object reference not set
to an instance of an object.

Source Error:

Line 80: RadioButton rb2 = (RadioButton)e.Item.FindControl("rb2");
Line 81: RadioButton rb3=(RadioButton)e.Item.FindControl("rb3");
Line 82: if(drv["Permission"] == null)
Line 83: {
Line 84: Response.Write("hell");

Source File: d:\ankit\property\user\manageuser.aspx.cs Line: 82

Stack Trace:

[NullReferenceException: Object reference not set to an instance of an
object.]
property.user.manageuser.listUser_ItemDataBound(Ob ject sender,
DataListItemEventArgs e) in d:\ankit\property\user\manageuser.aspx.cs:82
System.Web.UI.WebControls.DataList.OnItemDataBound (DataListItemEventArgs
e)
System.Web.UI.WebControls.DataList.CreateItem(Int3 2 itemIndex,
ListItemType itemType, Boolean dataBind, Object dataItem)
System.Web.UI.WebControls.DataList.CreateControlHi erarchy(Boolean
useDataSource)
System.Web.UI.WebControls.BaseDataList.OnDataBindi ng(EventArgs e)
System.Web.UI.WebControls.BaseDataList.DataBind()
property.user.manageuser.Page_Load(Object sender, EventArgs e) in
d:\ankit\property\user\manageuser.aspx.cs:49
System.Web.UI.Control.OnLoad(EventArgs e)
System.Web.UI.Control.LoadRecursive()
System.Web.UI.Page.ProcessRequestMain()

"Steven Cheng[MSFT]" <st*****@online.microsoft.com> wrote in message
news:Zq*************@TK2MSFTNGXA01.phx.gbl...
Thanks for your response Vikas,

So have you tried narrow down the Null reference exception to see which
object is the cause of the Null refrence exception. I guess it's the
certain column you try retrieving through the DataRowView... You can put
some code to check whether the certain column is null, like:

drv["columnname"] == null

Regards,

Steven Cheng
Microsoft Online Community Support
==================================================

When responding to posts, please "Reply to Group" via your newsreader so
that others may learn and benefit from your issue.

==================================================
This posting is provided "AS IS" with no warranties, and confers no
rights.

Get Secure! www.microsoft.com/security
(This posting is provided "AS IS", with no warranties, and confers no
rights.)

Apr 28 '06 #8
Thanks for your followup Vikas,

It seems that the error is caused by the DataRowView object(drv), what's
the datasource you used to bind the dataList? Using DataSet/DataTable or
SqlDataSource control? I'm thinking that the datasource object is not
DataView, thus, the DataItem in the "ItemDataBound" event should not be
"DataRowView". You can printout the data object's type through the
following code:

Response.Write(e.Item.DataItem.GetType().ToString( ));

Please feel free to let me know if you got any other finding.

Regards,

Steven Cheng
Microsoft Online Community Support
==================================================

When responding to posts, please "Reply to Group" via your newsreader so
that others may learn and benefit from your issue.

==================================================
This posting is provided "AS IS" with no warranties, and confers no rights.

Get Secure! www.microsoft.com/security
(This posting is provided "AS IS", with no warranties, and confers no
rights.)

May 1 '06 #9

it gives error again

i am binding data in datasource like this through datareader and i have no
problem in binding through any other means eg: dataset if it will work

string strsql="select UID,FName,Permission,Email1 from Userinfo where
ParentID="+ userid;

Database db=DatabaseFactory.CreateDatabase();

DBCommandWrapper cmd=db.GetSqlStringCommandWrapper(strsql);

dr = db.ExecuteReader(cmd);

listUser.DataSource=dr;

listUser.DataBind();

dr.Close();

protected void listUser_ItemDataBound(object sender,
System.Web.UI.WebControls.DataListItemEventArgs e)

{

Response.Write(e.Item.DataItem.GetType().ToString( ))

Object reference not set to an instance of an object.
Description: An unhandled exception occurred during the execution of the
current web request. Please review the stack trace for more information
about the error and where it originated in the code.

Exception Details: System.NullReferenceException: Object reference not set
to an instance of an object.

Source Error:

Line 75: protected void listUser_ItemDataBound(object sender,
System.Web.UI.WebControls.DataListItemEventArgs e)
Line 76: {
Line 77: Response.Write(e.Item.DataItem.GetType().ToString( ));
Line 78:
Line 79: DataRowView drv = e.Item.DataItem as DataRowView

"Steven Cheng[MSFT]" <st*****@online.microsoft.com> wrote in message
news:dh**************@TK2MSFTNGXA01.phx.gbl...
Thanks for your followup Vikas,

It seems that the error is caused by the DataRowView object(drv), what's
the datasource you used to bind the dataList? Using DataSet/DataTable or
SqlDataSource control? I'm thinking that the datasource object is not
DataView, thus, the DataItem in the "ItemDataBound" event should not be
"DataRowView". You can printout the data object's type through the
following code:

Response.Write(e.Item.DataItem.GetType().ToString( ));

Please feel free to let me know if you got any other finding.

Regards,

Steven Cheng
Microsoft Online Community Support
==================================================

When responding to posts, please "Reply to Group" via your newsreader so
that others may learn and benefit from your issue.

==================================================
This posting is provided "AS IS" with no warranties, and confers no
rights.

Get Secure! www.microsoft.com/security
(This posting is provided "AS IS", with no warranties, and confers no
rights.)

May 1 '06 #10
Thanks for your quick response Vikas,

Quite strange. For Datareader, the data object bound to each DataList Row
should be a System.Data.Common.DbDataRecord object. Then, try directly
checking the e.Item.DataItem to see whether it is null.

Also, comment out other code to isolate the problem.(not to involve othe
potential null reference exception).

Regards,

Steven Cheng
Microsoft Online Community Support
==================================================

When responding to posts, please "Reply to Group" via your newsreader so
that others may learn and benefit from your issue.

==================================================
This posting is provided "AS IS" with no warranties, and confers no rights.

Get Secure! www.microsoft.com/security
(This posting is provided "AS IS", with no warranties, and confers no
rights.)
May 1 '06 #11
protected void listUser_ItemDataBound(object sender,
System.Web.UI.WebControls.DataListItemEventArgs e)

{

if(e.Item.DataItem==null)

{

Response.Write("its null");

}

checked like this it enters the if statement to respose.write("its null")

"Steven Cheng[MSFT]" <st*****@online.microsoft.com> wrote in message
news:H0**************@TK2MSFTNGXA01.phx.gbl...
Thanks for your quick response Vikas,

Quite strange. For Datareader, the data object bound to each DataList Row
should be a System.Data.Common.DbDataRecord object. Then, try directly
checking the e.Item.DataItem to see whether it is null.

Also, comment out other code to isolate the problem.(not to involve othe
potential null reference exception).

Regards,

Steven Cheng
Microsoft Online Community Support
==================================================

When responding to posts, please "Reply to Group" via your newsreader so
that others may learn and benefit from your issue.

==================================================
This posting is provided "AS IS" with no warranties, and confers no
rights.

Get Secure! www.microsoft.com/security
(This posting is provided "AS IS", with no warranties, and confers no
rights.)

May 1 '06 #12
Strange behavior, seems the datasource has some problem. Are you sure the
Datareader contains record in it? Based on my local test, I can correct get
the DataItem in ItemdataBound event when binding to a DataReader.

If convenient, would you provide a simplified test page so that I can have
a look and test on my side? I'm thinking this is a purely project or
machine specific issue.

Regards,

Steven Cheng
Microsoft Online Community Support
==================================================

When responding to posts, please "Reply to Group" via your newsreader so
that others may learn and benefit from your issue.

==================================================
This posting is provided "AS IS" with no warranties, and confers no rights.

Get Secure! www.microsoft.com/security
(This posting is provided "AS IS", with no warranties, and confers no
rights.)

May 2 '06 #13
public class manageuser : System.Web.UI.Page
{ public IDataReader dr;

protected System.Web.UI.WebControls.DataList listUser;

private void Page_Load(object sender, System.EventArgs e)

int userid = int.Parse(Request.Cookies["UIDCookie"].Value.ToString());
string strsql="select UID,FName,Permission,Email1 from Userinfo where
ParentID="+ userid;
Database db=DatabaseFactory.CreateDatabase();
DBCommandWrapper cmd=db.GetSqlStringCommandWrapper(strsql);

dr = db.ExecuteReader(cmd);
listUser.DataSource=dr;
listUser.DataBind();
dr.Close();
}

protected void listUser_ItemDataBound(object sender,
System.Web.UI.WebControls.DataListItemEventArgs e)
{
if(e.Item.DataItem==null)
{
Response.Write("its null");
}

DataRowView drv = e.Item.DataItem as DataRowView;

RadioButton rb1 = (RadioButton)e.Item.FindControl("rb1");
RadioButton rb2 = (RadioButton)e.Item.FindControl("rb2");
RadioButton rb3=(RadioButton)e.Item.FindControl("rb3");
Response.Write(drv["Permission"].ToString());

//int setperm = (int)drv["Permission"];


}
}

front end code
<asp:datalist id="listUser" Runat="server" RepeatDirection="Vertical"
Width="100%">
<HeaderTemplate>
<table width="100%">
<tr width="100%">
<td width="25%">Subuser</td>
<td width="25%%">Password</td>
<td width="45%">Posting&nbsp;&nbsp;
Subscription&nbsp;&nbsp; Both</td>
<td width="5%">Edit</td>
</tr>
</table>
</HeaderTemplate>
<ItemTemplate>
<TABLE width="100%">
<TR width="100%">
<TD
width="25%"><%#DataBinder.Eval(Container.DataItem, "FName")%></TD>
<TD width="25%"><INPUT type=text
value='<%#DataBinder.Eval(Container.DataItem,"Emai l1")%>' name=txtPass></TD>
<TD align="left" width="45%">
<asp:RadioButton id="rb1" runat="server"
GroupName="gp1"></asp:RadioButton>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbs p;&nbsp;&nbsp;&nbsp;&nbsp;
<asp:RadioButton id="rb2" runat="server"
GroupName="gp1"></asp:RadioButton>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbs p;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
<asp:RadioButton id="rb3" Runat="server"
GroupName="gp1"></asp:RadioButton></TD>
<TD align="left" width="5%">
<asp:Button id="EditSubuser" Runat="server"
Text="Edit"></asp:Button></TD>
</TR>
</TABLE>
</ItemTemplate>
</asp:datalist>

this much i am sure i am getting value from database
bcz if don't write
protected void listUser_ItemDataBound(object sender,
System.Web.UI.WebControls.DataListItemEventArgs e)
anything in this function it fills my datalist( 5 rows selected from
database
"Steven Cheng[MSFT]" <st*****@online.microsoft.com> wrote in message
news:5$**************@TK2MSFTNGXA01.phx.gbl...
Strange behavior, seems the datasource has some problem. Are you sure the
Datareader contains record in it? Based on my local test, I can correct
get
the DataItem in ItemdataBound event when binding to a DataReader.

If convenient, would you provide a simplified test page so that I can have
a look and test on my side? I'm thinking this is a purely project or
machine specific issue.

Regards,

Steven Cheng
Microsoft Online Community Support
==================================================

When responding to posts, please "Reply to Group" via your newsreader so
that others may learn and benefit from your issue.

==================================================
This posting is provided "AS IS" with no warranties, and confers no
rights.

Get Secure! www.microsoft.com/security
(This posting is provided "AS IS", with no warranties, and confers no
rights.)

May 2 '06 #14
Hi Vikas,

Thanks for the response.

I think you should remove the following code in the ItemDataBound handler:

=========
DataRowView drv = e.Item.DataItem as DataRowView;
Response.Write(drv["Permission"].ToString());
============
Also, based on my local test, "Null reference exception" is likely caused
by some explicit cast operation. I think you can consider use the
DataBinder.Eval to query property/column value from the DataItem, and use
System.Convert class to perform converting on the object got from Eval, e.g:

=====================
protected void DataList1_ItemDataBound(object sender, DataListItemEventArgs
e)
{
Response.Write("<br/>" + e.Item.DataItem);

object obj = DataBinder.Eval(e.Item.DataItem, "id");

Response.Write("<br/>id: " + Convert.ToInt64(obj));
}
=======================

Hope this helps.

Regards,

Steven Cheng
Microsoft Online Community Support
==================================================

When responding to posts, please "Reply to Group" via your newsreader so
that others may learn and benefit from your issue.

==================================================
This posting is provided "AS IS" with no warranties, and confers no rights.

Get Secure! www.microsoft.com/security
(This posting is provided "AS IS", with no warranties, and confers no
rights.)

May 3 '06 #15
thanks to u very much
solved like this
protected void listUser_ItemDataBound(object sender,
System.Web.UI.WebControls.DataListItemEventArgs e)

{

if(e.Item.DataItem!=null)

{

object obj = DataBinder.Eval(e.Item.DataItem, "Permission");

int x=Convert.ToInt32(obj);
RadioButton rb1 = (RadioButton)e.Item.FindControl("rb1");

RadioButton rb2 = (RadioButton)e.Item.FindControl("rb2");

RadioButton rb3=(RadioButton)e.Item.FindControl("rb3");

if(x==1)

{

rb1.Checked=true;

}

else if(x==2)

{

rb2.Checked=true;

}

else if(x==3)

{

rb3.Checked=true;

}
}


}

"Steven Cheng[MSFT]" <st*****@online.microsoft.com> wrote in message
news:gK**************@TK2MSFTNGXA01.phx.gbl...
Hi Vikas,

Thanks for the response.

I think you should remove the following code in the ItemDataBound handler:

=========
DataRowView drv = e.Item.DataItem as DataRowView;
Response.Write(drv["Permission"].ToString());
============
Also, based on my local test, "Null reference exception" is likely caused
by some explicit cast operation. I think you can consider use the
DataBinder.Eval to query property/column value from the DataItem, and use
System.Convert class to perform converting on the object got from Eval,
e.g:

=====================
protected void DataList1_ItemDataBound(object sender,
DataListItemEventArgs
e)
{
Response.Write("<br/>" + e.Item.DataItem);

object obj = DataBinder.Eval(e.Item.DataItem, "id");

Response.Write("<br/>id: " + Convert.ToInt64(obj));
}
=======================

Hope this helps.

Regards,

Steven Cheng
Microsoft Online Community Support
==================================================

When responding to posts, please "Reply to Group" via your newsreader so
that others may learn and benefit from your issue.

==================================================
This posting is provided "AS IS" with no warranties, and confers no
rights.

Get Secure! www.microsoft.com/security
(This posting is provided "AS IS", with no warranties, and confers no
rights.)

May 3 '06 #16
Hi Vikas,

Your further code suddenly remind me of one issue. I'm sorry that I should
have noticed this issue earlier since this is a common mistake we would
make(actually I also made it in my test code:( ). I get the cause of the
null reference exception you're encountering, it is because we didn't check
the ItemType in the "ItemDataBound" event, actually, only for "Item" or
"AlternateItem" will the DataItem be available, for some other item such as
Pager, Footer.... , the property is not used. So we should change the code
like below:

protected void DataList1_ItemDataBound(object sender,
DataListItemEventArgs e)
{

if (e.Item.ItemType == ListItemType.Item || e.Item.ItemType ==
ListItemType.AlternatingItem)
{
...................
//we can access the e.Item.DataItem

}

}

Hope this help clarify the problem further. Sorry for my mistake at the
start.

Regards,

Steven Cheng
Microsoft Online Community Support
==================================================

When responding to posts, please "Reply to Group" via your newsreader so
that others may learn and benefit from your issue.

==================================================
This posting is provided "AS IS" with no warranties, and confers no rights.

Get Secure! www.microsoft.com/security
(This posting is provided "AS IS", with no warranties, and confers no
rights.)

May 3 '06 #17

This thread has been closed and replies have been disabled. Please start a new discussion.

Similar topics

0
by: darkelf | last post by:
Hello I have a aspx page with a two datalist controls. Inside them I have some radio buttons that are created with data binding for the user to choose. It displays a question and user has to choose...
0
by: manu_srinivasa | last post by:
:( Here is my design, we have user control placed in a aspx page. within user control, i am having datalist, within datalist i am placing radio button. On click of radio button, i need to...
1
by: pierre.basson | last post by:
Hi, I have a DataList that contains an image and 3 radio buttons. The radio buttons are used to change the status of the image i.e. Approved, Suspended and Deleted. When the form loads, I want...
3
by: pierre.basson | last post by:
Hi, I have a DataList with an Item Template that contains an image and three radio buttons, which are used to indicate the image's status. How can I set the appropriate radio button to checked,...
0
by: David Hearn | last post by:
I have a datalist with an ItemTemplate set up. In the item template, I have a radio button. I have set the groupname on the radio button so that you should only be able to have one radio button...
3
by: David Hearn | last post by:
I have a datalist that I have inserted a radio button into. The datalist populates with a list of items and each one has a radio button next to it. I need to use the radio button to allow the user...
2
by: cindy | last post by:
When my datalist loads I am trying to make the checked value in a radio button group reflect which value is stored in the data and then fire and event when the CheckChanged event fires. private...
2
by: Mike Kelly | last post by:
Hi. I have a data table where rows are grouped according to a certain criteria and I want to be able to display all the rows that belong to the same group together on the screen. In addition, I...
1
by: Vikas Kumar | last post by:
i am selectin some data from database and through reader showing it in datalist as above now for radio buttons i have single column which returns 1,2,3 and according to that i want one of above...
0
by: DolphinDB | last post by:
The formulas of 101 quantitative trading alphas used by WorldQuant were presented in the paper 101 Formulaic Alphas. However, some formulas are complex, leading to challenges in calculation. Take...
0
by: ryjfgjl | last post by:
ExcelToDatabase: batch import excel into database automatically...
0
isladogs
by: isladogs | last post by:
The next Access Europe meeting will be on Wednesday 6 Mar 2024 starting at 18:00 UK time (6PM UTC) and finishing at about 19:15 (7.15PM). In this month's session, we are pleased to welcome back...
1
isladogs
by: isladogs | last post by:
The next Access Europe meeting will be on Wednesday 6 Mar 2024 starting at 18:00 UK time (6PM UTC) and finishing at about 19:15 (7.15PM). In this month's session, we are pleased to welcome back...
0
by: Vimpel783 | last post by:
Hello! Guys, I found this code on the Internet, but I need to modify it a little. It works well, the problem is this: Data is sent from only one cell, in this case B5, but it is necessary that data...
0
by: ArrayDB | last post by:
The error message I've encountered is; ERROR:root:Error generating model response: exception: access violation writing 0x0000000000005140, which seems to be indicative of an access violation...
0
by: CloudSolutions | last post by:
Introduction: For many beginners and individual users, requiring a credit card and email registration may pose a barrier when starting to use cloud servers. However, some cloud server providers now...
1
by: Shællîpôpï 09 | last post by:
If u are using a keypad phone, how do u turn on JavaScript, to access features like WhatsApp, Facebook, Instagram....
0
by: af34tf | last post by:
Hi Guys, I have a domain whose name is BytesLimited.com, and I want to sell it. Does anyone know about platforms that allow me to list my domain in auction for free. Thank you

By using Bytes.com and it's services, you agree to our Privacy Policy and Terms of Use.

To disable or enable advertisements and analytics tracking please visit the manage ads & tracking page.