472,334 Members | 2,347 Online
Bytes | Software Development & Data Engineering Community
+ Post

Home Posts Topics Members FAQ

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

problem binding comboBox to dataset

When I try to databind my comboBox (specifically field "emplcode") to a
filled dataset , the contents of the comboBox displays a bunch of
"System.Data.DataRowView". I assume the amount of times
"System.Data.DataR..." is displayed inside the combobox is the amount of
records in the dataset. On the other hand, if my query is "select emplcode
from payemployee", the databind will work fine (but I don't want to limit
the dataset to one field). Any help is appreciated. This is the code:

DataSet DS_Employees = new DataSet();

SqlConnection SQLConn = new SqlConnection("Data Source=localhost; Integrated
Security=SSPI;" +

"Initial Catalog=payroll");

string strThisQuery = "select * from payemployee"; //If the query were
"select emplcode from payemployee" it works

SqlDataAdapter DA_empl = new SqlDataAdapter (strThisQuery, SQLConn);

DA_empl.Fill(DS_Employees, "payemployee"); //Do I need the 2nd parameter?

SQLConn.Close();

comboBox_emplcode.DataSource = DS_Employees.Tables["payemployee"];

comboBox_emplcode.DisplayMember = "emplcode"; //I also tried
comboBox_emplcode.DisplayMember = "payemployee.emplcode";

Thanks again,

Omar
Nov 15 '05 #1
6 7334
Set your DataValueField (i.e what the value should be if the combo box
is taking part in any events) and the DataTextField (what should be
displayed)..

try setting

comboBox_emplcode.DataTextField = " " <-- field u want as the display
comboBox_emplcode.DataValueField = " " <-- field u want as value..

also make sure u comboBox_emplcode.DataBind()
Omar wrote:
When I try to databind my comboBox (specifically field "emplcode") to a
filled dataset , the contents of the comboBox displays a bunch of
"System.Data.DataRowView". I assume the amount of times
"System.Data.DataR..." is displayed inside the combobox is the amount of
records in the dataset. On the other hand, if my query is "select emplcode
from payemployee", the databind will work fine (but I don't want to limit
the dataset to one field). Any help is appreciated. This is the code:

DataSet DS_Employees = new DataSet();

SqlConnection SQLConn = new SqlConnection("Data Source=localhost; Integrated
Security=SSPI;" +

"Initial Catalog=payroll");

string strThisQuery = "select * from payemployee"; //If the query were
"select emplcode from payemployee" it works

SqlDataAdapter DA_empl = new SqlDataAdapter (strThisQuery, SQLConn);

DA_empl.Fill(DS_Employees, "payemployee"); //Do I need the 2nd parameter?

SQLConn.Close();

comboBox_emplcode.DataSource = DS_Employees.Tables["payemployee"];

comboBox_emplcode.DisplayMember = "emplcode"; //I also tried
comboBox_emplcode.DisplayMember = "payemployee.emplcode";

Thanks again,

Omar


Nov 15 '05 #2

Hello Omar,

You can do something like this:
try
{
DataSet ds=new DataSet();
SqlDataAdapter adapter=new SqlDataAdapter("select * from
jobs","server=localhost;database=pubs;uid=sa;pwd=" );
adapter.Fill(ds);
comboBox1.DataSource=ds.Tables[0];
comboBox1.DisplayMember="job_desc";
comboBox1.ValueMember="job_id";
}
catch(Exception ex)
{
MessageBox.Show(ex.Message );
}

I use the default database of SqlServer and use the job_desc column as the
display item of comboBox, job_id column as the value item of the comboBox.
You can get the current selected member of these 2 column value by
comboBox1.SelectedText and comboBox1.SelectedValue.

Hope this helps,
Best regards,
Jeffrey Tan
Microsoft Online Partner Support
Get Secure! - www.microsoft.com/security
This posting is provided "as is" with no warranties and confers no rights.

--------------------
| Reply-To: "Omar" <none>
| From: "Omar" <none>
| Subject: problem binding comboBox to dataset
| Date: Wed, 8 Oct 2003 17:51:35 -0500
| Lines: 36
| X-Priority: 3
| X-MSMail-Priority: Normal
| X-Newsreader: Microsoft Outlook Express 6.00.2800.1158
| X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2800.1165
| Message-ID: <uX**************@tk2msftngp13.phx.gbl>
| Newsgroups: microsoft.public.dotnet.languages.csharp
| NNTP-Posting-Host: 66-50-71-153.prtc.net 66.50.71.153
| Path: cpmsftngxa06.phx.gbl!TK2MSFTNGP08.phx.gbl!tk2msftn gp13.phx.gbl
| Xref: cpmsftngxa06.phx.gbl microsoft.public.dotnet.languages.csharp:190027
| X-Tomcat-NG: microsoft.public.dotnet.languages.csharp
|
| When I try to databind my comboBox (specifically field "emplcode") to a
| filled dataset , the contents of the comboBox displays a bunch of
| "System.Data.DataRowView". I assume the amount of times
| "System.Data.DataR..." is displayed inside the combobox is the amount of
| records in the dataset. On the other hand, if my query is "select emplcode
| from payemployee", the databind will work fine (but I don't want to limit
| the dataset to one field). Any help is appreciated. This is the code:
|
| DataSet DS_Employees = new DataSet();
|
| SqlConnection SQLConn = new SqlConnection("Data Source=localhost;
Integrated
| Security=SSPI;" +
|
| "Initial Catalog=payroll");
|
| string strThisQuery = "select * from payemployee"; //If the query were
| "select emplcode from payemployee" it works
|
| SqlDataAdapter DA_empl = new SqlDataAdapter (strThisQuery, SQLConn);
|
| DA_empl.Fill(DS_Employees, "payemployee"); //Do I need the 2nd parameter?
|
| SQLConn.Close();
|
| comboBox_emplcode.DataSource = DS_Employees.Tables["payemployee"];
|
| comboBox_emplcode.DisplayMember = "emplcode"; //I also tried
| comboBox_emplcode.DisplayMember = "payemployee.emplcode";
|
|
|
| Thanks again,
|
| Omar
|
|
|

Nov 15 '05 #3
Thanks for the response.
In my case, the DataTextField or DataValueField members don't exist and the
DataBind method doesn't exist either.

"Kunal" <ku***@nospamsoremovethisqnal.net> wrote in message
news:uw**************@TK2MSFTNGP09.phx.gbl...
Set your DataValueField (i.e what the value should be if the combo box
is taking part in any events) and the DataTextField (what should be
displayed)..

try setting

comboBox_emplcode.DataTextField = " " <-- field u want as the display
comboBox_emplcode.DataValueField = " " <-- field u want as value..

also make sure u comboBox_emplcode.DataBind()
Omar wrote:
When I try to databind my comboBox (specifically field "emplcode") to a
filled dataset , the contents of the comboBox displays a bunch of
"System.Data.DataRowView". I assume the amount of times
"System.Data.DataR..." is displayed inside the combobox is the amount of
records in the dataset. On the other hand, if my query is "select emplcode from payemployee", the databind will work fine (but I don't want to limit the dataset to one field). Any help is appreciated. This is the code:

DataSet DS_Employees = new DataSet();

SqlConnection SQLConn = new SqlConnection("Data Source=localhost; Integrated Security=SSPI;" +

"Initial Catalog=payroll");

string strThisQuery = "select * from payemployee"; //If the query were
"select emplcode from payemployee" it works

SqlDataAdapter DA_empl = new SqlDataAdapter (strThisQuery, SQLConn);

DA_empl.Fill(DS_Employees, "payemployee"); //Do I need the 2nd parameter?
SQLConn.Close();

comboBox_emplcode.DataSource = DS_Employees.Tables["payemployee"];

comboBox_emplcode.DisplayMember = "emplcode"; //I also tried
comboBox_emplcode.DisplayMember = "payemployee.emplcode";

Thanks again,

Omar


Nov 15 '05 #4
Thanks for your post. I tried it your way with the same result. Instead of
displaying 111 emplcodes (the amount of records in the table), it displays
111 "System.Data.DataRowView". I *did* notice that it ignores the
comboBox.DisplayMember member.

I also tried it like this:
try
{
DataSet DS_Employees=new DataSet();
SqlConnection SQLConn = new SqlConnection("Data Source=localhost;
Integrated Security=SSPI;" +
"Initial Catalog=payroll");
SqlDataAdapter DA_empl = new SqlDataAdapter (strThisQuery, SQLConn);
DA_empl.Fill(DS_Employees, "payemployee");
SQLConn.Close();
DataView dv = new DataView(DS_Employees.Tables["Payemployee"]);
comboBox1.DataSource=dv;
comboBox1.DisplayMember = "FName";
// I can susbstitute the previous line with comboBox1.DisplayMember =
"thisFieldDoesntExist"; and it'll display the same 111
"System.Data.DataR..." lines
catch(Exception ex)
{
MessageBox.Show(ex.Message ); //it never displays the MessageBox since
it never encounters an error.
}

"Jeffrey Tan[MSFT]" <v-*****@online.microsoft.com> wrote in message
news:jC**************@cpmsftngxa06.phx.gbl...

Hello Omar,

You can do something like this:
try
{
DataSet ds=new DataSet();
SqlDataAdapter adapter=new SqlDataAdapter("select * from
jobs","server=localhost;database=pubs;uid=sa;pwd=" );
adapter.Fill(ds);
comboBox1.DataSource=ds.Tables[0];
comboBox1.DisplayMember="job_desc";
comboBox1.ValueMember="job_id";
}
catch(Exception ex)
{
MessageBox.Show(ex.Message );
}

I use the default database of SqlServer and use the job_desc column as the
display item of comboBox, job_id column as the value item of the comboBox.
You can get the current selected member of these 2 column value by
comboBox1.SelectedText and comboBox1.SelectedValue.

Hope this helps,
Best regards,
Jeffrey Tan
Microsoft Online Partner Support
Get Secure! - www.microsoft.com/security
This posting is provided "as is" with no warranties and confers no rights.

--------------------
| Reply-To: "Omar" <none>
| From: "Omar" <none>
| Subject: problem binding comboBox to dataset
| Date: Wed, 8 Oct 2003 17:51:35 -0500
| Lines: 36
| X-Priority: 3
| X-MSMail-Priority: Normal
| X-Newsreader: Microsoft Outlook Express 6.00.2800.1158
| X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2800.1165
| Message-ID: <uX**************@tk2msftngp13.phx.gbl>
| Newsgroups: microsoft.public.dotnet.languages.csharp
| NNTP-Posting-Host: 66-50-71-153.prtc.net 66.50.71.153
| Path: cpmsftngxa06.phx.gbl!TK2MSFTNGP08.phx.gbl!tk2msftn gp13.phx.gbl
| Xref: cpmsftngxa06.phx.gbl microsoft.public.dotnet.languages.csharp:190027 | X-Tomcat-NG: microsoft.public.dotnet.languages.csharp
|
| When I try to databind my comboBox (specifically field "emplcode") to a
| filled dataset , the contents of the comboBox displays a bunch of
| "System.Data.DataRowView". I assume the amount of times
| "System.Data.DataR..." is displayed inside the combobox is the amount of
| records in the dataset. On the other hand, if my query is "select emplcode | from payemployee", the databind will work fine (but I don't want to limit | the dataset to one field). Any help is appreciated. This is the code:
|
| DataSet DS_Employees = new DataSet();
|
| SqlConnection SQLConn = new SqlConnection("Data Source=localhost;
Integrated
| Security=SSPI;" +
|
| "Initial Catalog=payroll");
|
| string strThisQuery = "select * from payemployee"; //If the query were
| "select emplcode from payemployee" it works
|
| SqlDataAdapter DA_empl = new SqlDataAdapter (strThisQuery, SQLConn);
|
| DA_empl.Fill(DS_Employees, "payemployee"); //Do I need the 2nd parameter? |
| SQLConn.Close();
|
| comboBox_emplcode.DataSource = DS_Employees.Tables["payemployee"];
|
| comboBox_emplcode.DisplayMember = "emplcode"; //I also tried
| comboBox_emplcode.DisplayMember = "payemployee.emplcode";
|
|
|
| Thanks again,
|
| Omar
|
|
|


Nov 15 '05 #5
I finally found the answer. Apparently, the field in
comboBox.DisplayMember is case-sensitive (at least for SQL Server 2000).
The funny thing is that the sql statement used to fill the dataset is *not*
case-sensitive.

Thanks again for the help.
"Omar" <none> wrote in message news:uX**************@tk2msftngp13.phx.gbl...
When I try to databind my comboBox (specifically field "emplcode") to a
filled dataset , the contents of the comboBox displays a bunch of
"System.Data.DataRowView". I assume the amount of times
"System.Data.DataR..." is displayed inside the combobox is the amount of
records in the dataset. On the other hand, if my query is "select emplcode
from payemployee", the databind will work fine (but I don't want to limit
the dataset to one field). Any help is appreciated. This is the code:

DataSet DS_Employees = new DataSet();

SqlConnection SQLConn = new SqlConnection("Data Source=localhost; Integrated Security=SSPI;" +

"Initial Catalog=payroll");

string strThisQuery = "select * from payemployee"; //If the query were
"select emplcode from payemployee" it works

SqlDataAdapter DA_empl = new SqlDataAdapter (strThisQuery, SQLConn);

DA_empl.Fill(DS_Employees, "payemployee"); //Do I need the 2nd parameter?

SQLConn.Close();

comboBox_emplcode.DataSource = DS_Employees.Tables["payemployee"];

comboBox_emplcode.DisplayMember = "emplcode"; //I also tried
comboBox_emplcode.DisplayMember = "payemployee.emplcode";

Thanks again,

Omar

Nov 15 '05 #6

Hi Omar,

I think the SQL statement is passed to the SqlServer by the .Net
application, and it will be handled by the SqlServer, so it is not
case-sensitive.
While binding the ComboBox's DisplayMember property with certain field of
database, this field is already the column of DataSet and it is processed
in .Net, so it is case-sensitive.(I think this is determined by the design
of DisplayMember property).

I am glad you finally found the problem, I think we all must be careful of
this type of problem.

Thanks

Best regards,
Jeffrey Tan
Microsoft Online Partner Support
Get Secure! - www.microsoft.com/security
This posting is provided "as is" with no warranties and confers no rights.

--------------------
| Reply-To: "Omar" <none>
| From: "Omar" <none>
| References: <uX**************@tk2msftngp13.phx.gbl>
| Subject: Re: problem binding comboBox to dataset
| Date: Thu, 9 Oct 2003 12:16:35 -0500
| Lines: 48
| X-Priority: 3
| X-MSMail-Priority: Normal
| X-Newsreader: Microsoft Outlook Express 6.00.2800.1158
| X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2800.1165
| Message-ID: <#U**************@TK2MSFTNGP12.phx.gbl>
| Newsgroups: microsoft.public.dotnet.languages.csharp
| NNTP-Posting-Host: 66-50-71-48.prtc.net 66.50.71.48
| Path: cpmsftngxa06.phx.gbl!TK2MSFTNGP08.phx.gbl!TK2MSFTN GP12.phx.gbl
| Xref: cpmsftngxa06.phx.gbl microsoft.public.dotnet.languages.csharp:190286
| X-Tomcat-NG: microsoft.public.dotnet.languages.csharp
|
| I finally found the answer. Apparently, the field in
| comboBox.DisplayMember is case-sensitive (at least for SQL Server 2000).
| The funny thing is that the sql statement used to fill the dataset is
*not*
| case-sensitive.
|
| Thanks again for the help.
|
|
| "Omar" <none> wrote in message
news:uX**************@tk2msftngp13.phx.gbl...
| > When I try to databind my comboBox (specifically field "emplcode") to a
| > filled dataset , the contents of the comboBox displays a bunch of
| > "System.Data.DataRowView". I assume the amount of times
| > "System.Data.DataR..." is displayed inside the combobox is the amount of
| > records in the dataset. On the other hand, if my query is "select
emplcode
| > from payemployee", the databind will work fine (but I don't want to
limit
| > the dataset to one field). Any help is appreciated. This is the code:
| >
| > DataSet DS_Employees = new DataSet();
| >
| > SqlConnection SQLConn = new SqlConnection("Data Source=localhost;
| Integrated
| > Security=SSPI;" +
| >
| > "Initial Catalog=payroll");
| >
| > string strThisQuery = "select * from payemployee"; //If the query were
| > "select emplcode from payemployee" it works
| >
| > SqlDataAdapter DA_empl = new SqlDataAdapter (strThisQuery, SQLConn);
| >
| > DA_empl.Fill(DS_Employees, "payemployee"); //Do I need the 2nd
parameter?
| >
| > SQLConn.Close();
| >
| > comboBox_emplcode.DataSource = DS_Employees.Tables["payemployee"];
| >
| > comboBox_emplcode.DisplayMember = "emplcode"; //I also tried
| > comboBox_emplcode.DisplayMember = "payemployee.emplcode";
| >
| >
| >
| > Thanks again,
| >
| > Omar
| >
| >
|
|
|

Nov 15 '05 #7

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

Similar topics

13
by: Paul Slavin | last post by:
I have a textbox bound to a dataview, when I update the text in the textbox no changes take place in the underlying dataset. Why is this?? any...
3
by: Russ | last post by:
I have a subroutine that I call to bind a dataset to a combobox. It works sometimes. See the code below.. 1 Private Sub BindDropDownToDataSet(...
5
by: Poonam | last post by:
I have a department table with DeptID and DeptName. I am trying to fill my combobox with DeptName. Here is my code but it does not work? Can...
30
by: dbuchanan | last post by:
ComboBox databindng Problem == How the ComboBox is setup and used: My comboBox is populated by a lookup table. The ValueMember is the lookup...
0
by: mjsterz | last post by:
I've been working with VB .NET for less than a year and this is the first time I've posted on one of these groups, so let me apologize beforehand...
0
by: Tommaso Caldarola | last post by:
2.0 - No Typed DataSet. My custom object implements all the needed interface (IList, IBindingList, ITypedList) in order to manage complex...
3
by: Peter | last post by:
OK, so in addition to the problem I mentioned before (c.f. "Data Binding to Textbox"), I realized that my comboboxes are not really bound to the...
1
by: Robert Dufour | last post by:
I have a table of addresses and it contains a CountryId which points to a table of countries. The datatstructure of the Countries Lookup tables is...
1
by: Jim | last post by:
Hi, Trying to implement databinding. I've a dataset with a table, a windows form with typical controls: combobox, datetimepicker, textbox . . ....
0
by: concettolabs | last post by:
In today's business world, businesses are increasingly turning to PowerApps to develop custom business applications. PowerApps is a powerful tool...
0
better678
by: better678 | last post by:
Question: Discuss your understanding of the Java platform. Is the statement "Java is interpreted" correct? Answer: Java is an object-oriented...
0
by: CD Tom | last post by:
This happens in runtime 2013 and 2016. When a report is run and then closed a toolbar shows up and the only way to get it to go away is to right...
0
by: Naresh1 | last post by:
What is WebLogic Admin Training? WebLogic Admin Training is a specialized program designed to equip individuals with the skills and knowledge...
0
jalbright99669
by: jalbright99669 | last post by:
Am having a bit of a time with URL Rewrite. I need to incorporate http to https redirect with a reverse proxy. I have the URL Rewrite rules made...
0
by: antdb | last post by:
Ⅰ. Advantage of AntDB: hyper-convergence + streaming processing engine In the overall architecture, a new "hyper-convergence" concept was...
0
by: AndyPSV | last post by:
HOW CAN I CREATE AN AI with an .executable file that would suck all files in the folder and on my computerHOW CAN I CREATE AN AI with an .executable...
0
by: Arjunsri | last post by:
I have a Redshift database that I need to use as an import data source. I have configured the DSN connection using the server, port, database, and...
0
hi
by: WisdomUfot | last post by:
It's an interesting question you've got about how Gmail hides the HTTP referrer when a link in an email is clicked. While I don't have the specific...

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.