Solved

ASP.NET Item.Insert Null Value

Posted on 2009-04-14
9
567 Views
Last Modified: 2012-05-06
How can I add a NULL value to a dropdown list that is Dataound?

I have tried
Items.Insert(0, New ListItem("", String.Empty))
Items.Insert(0, New ListItem("", Nothing))

but the records are not being inserted as NULLS
0
Comment
Question by:ITHelper80
[X]
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
9 Comments
 
LVL 25

Expert Comment

by:Luis Pérez
ID: 24138526
If the dropdown list is databound, try to insert the null/empty value not directly to the dropdownlist, but on the data source. For example, if your data source is a Dataset obtained from database query, insert a new empty file in the dataset itself before to databind to the dropdownlist. That will work for sure.
0
 
LVL 3

Expert Comment

by:BalkisBr
ID: 24138564
You can only use .Add() in this case.

try this:
YourDropDown.Items.Add(new ListItem())

[]'s
0
 
LVL 14

Expert Comment

by:GiftsonDJohn
ID: 24138921
Hi,

The following code snippet works.
            DataTable dt = new DataTable();
            dt.Columns.Add("ID");
            dt.Columns.Add("Name");
            
            DataRow dr;
 
            dr = dt.NewRow();
            dr[0]= 1;
            dr[1]="mathews";
            dt.Rows.Add(dr);
 
            dr = dt.NewRow();
            dr[0]=2;
            dr[1]="Julie";
            dt.Rows.Add(dr);
 
            dr = dt.NewRow();
            dr[0]=3;
            dr[1]="King";
            dt.Rows.Add(dr);
            
            dr=dt.NewRow();
            dr[0]=4;
            dr[1]="Romeo";
            dt.Rows.Add(dr);
 
            dr=dt.NewRow();
            dr[0]=5;
            dr[1]="Mose";
            dt.Rows.Add(dr);
 
            DropDownList1.DataSource = dt;
            DropDownList1.DataTextField = "Name";
            DropDownList1.DataValueField = "ID";
            DropDownList1.DataBind();
 
            DropDownList1.Items.Insert(0, new ListItem(string.Empty, string.Empty));

Open in new window

0
Instantly Create Instructional Tutorials

Contextual Guidance at the moment of need helps your employees adopt to new software or processes instantly. Boost knowledge retention and employee engagement step-by-step with one easy solution.

 
LVL 14

Expert Comment

by:GiftsonDJohn
ID: 24138975
But there is a limitation when you try to insert into the database. An empty string will be insert into the database. This is because the SelectedValue of the DropDownList will return a string.

To handle this you have to handle in the code behind.

If you have a typed dataset, automatically Visual Studio will create a function named

DataSet1.DataTable1.SetColumnNull();


0
 
LVL 22

Expert Comment

by:prairiedog
ID: 24139082
>>>but the records are not being inserted as NULLS
Why do you need to insert a NULL value in a DropDownList? You can insert an empty string in DDL, not null. Maybe I misunderstood your problem?
0
 
LVL 6

Author Comment

by:ITHelper80
ID: 24139298
Well Im fine with inserted an empty string but the problem is I am running a SELECT query against the database and I dont know how to filter out the empty string....

WHERE [TableName] IS NOT NULL doesnt work
0
 
LVL 14

Expert Comment

by:GiftsonDJohn
ID: 24139483
You have to write a stored procedure like this.

Create Procedure dbo.sp_InsertValue(@EName varchar(150) = null)
AS
Begin
             Insert into [TableName] values (@EName)
END

and on the page code behind you have to add the parameter @EName  to the SqlCommand object only when the selected index of the dropdown list  > 0

or other way

Create Procedure dbo.sp_InsertValue(@EName varchar(150))
As
Begin
     IF len(@EName)>0
         Insert into [TableName[ Values (@EName)
    Else
        Insert into [TableName] Values (null)
END
0
 
LVL 6

Author Comment

by:ITHelper80
ID: 24144303
I was able to solve this problem by using a different method. Thanks to all who offered a suggestion
0
 
LVL 6

Accepted Solution

by:
ITHelper80 earned 0 total points
ID: 24144308
Found different solution that worked for my purposes
0

Featured Post

Free Tool: SSL Checker

Scans your site and returns information about your SSL implementation and certificate. Helpful for debugging and validating your SSL configuration.

One of a set of tools we are providing to everyone as a way of saying thank you for being a part of the community.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

For those of you who don't follow the news, or just happen to live under rocks, Microsoft Research released a beta SDK (http://www.microsoft.com/en-us/download/details.aspx?id=27876) for the Xbox 360 Kinect. If you don't know what a Kinect is (http:…
This article shows how to deploy dynamic backgrounds to computers depending on the aspect ratio of display
I've attached the XLSM Excel spreadsheet I used in the video and also text files containing the macros used below. https://filedb.experts-exchange.com/incoming/2017/03_w12/1151775/Permutations.txt https://filedb.experts-exchange.com/incoming/201…

739 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question