?
Solved

Add non sqldatasource listitems to asp:dropdown linked to a sqldatasource

Posted on 2010-08-20
5
Medium Priority
?
486 Views
Last Modified: 2012-05-10
I have an asp:dropdown populated from a sqldatasource control and it works great.  However, I need to add 1 more listitem that is not pulled from the query to put in the dropdown but it does not show up.  How can I do this?
<asp:DropDownList ID="DropDownList1" runat="server" DataSourceID="sdsMember" DataTextField="MEMBER_SNAME" DataValueField="MEMBER_ID">
                                    
<asp:ListItem Text="All Members" Value="0" Selected="True"></asp:ListItem>
                                    
</asp:DropDownList>
                                    
<asp:SqlDataSource ID="sdsMember" runat="server" ConnectionString="<%$ ConnectionStrings:DBSFL %>" SelectCommand="select MEMBER_SNAME, MEMBER_ID from MEMBER order by MEMBER_SNAME ASC"></asp:SqlDataSource>

Open in new window

0
Comment
Question by:rondre
  • 2
  • 2
5 Comments
 

Author Comment

by:rondre
ID: 33483473
In case it wasn't clear, the output on the page is all of the items from the select statement of the sqldatasource but the asp:listitem "All Members" does not show up - looking to see how this is done.  Thanks!
0
 
LVL 22

Accepted Solution

by:
Om Prakash earned 2000 total points
ID: 33483618
Add AppendDataBoundItems="true" to asp:DropDownList

<asp:DropDownList ID="DropDownList1" runat="server" DataSourceID="sdsMember" DataTextField="MEMBER_SNAME" DataValueField="MEMBER_ID" AppendDataBoundItems="true">
0
 
LVL 19

Expert Comment

by:daveamour
ID: 33483655
Check it out....
<%@ Page Title="Home Page" Language="C#" MasterPageFile="~/Site.master" AutoEventWireup="true"
    CodeBehind="Default.aspx.cs" Inherits="EETest._Default" %>

<asp:Content ID="HeaderContent" runat="server" ContentPlaceHolderID="HeadContent">
</asp:Content>
<asp:Content ID="BodyContent" runat="server" ContentPlaceHolderID="MainContent">
    <h2>
        Welcome to ASP.NET!
    </h2>
    <p>
        To learn more about ASP.NET visit <a href="http://www.asp.net" title="ASP.NET Website">www.asp.net</a>.
    </p>
    <p>
        You can also find <a href="http://go.microsoft.com/fwlink/?LinkID=152368&amp;clcid=0x409"
            title="MSDN ASP.NET Docs">documentation on ASP.NET at MSDN</a>.
    </p>

    <asp:DropDownList ID="People" runat="server"></asp:DropDownList>
</asp:Content>

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;

namespace EETest
{
    public partial class _Default : System.Web.UI.Page
    {
        protected void Page_Load(object sender, EventArgs e)
        {
            People.DataSource = GetPeople();
            People.DataBind();

            People.PreRender += new EventHandler(People_PreRender);
        }

        private void People_PreRender(object sender, EventArgs e)
        {
            People.Items.Insert(0, new ListItem("Sharon"));
        }

        private List<String> GetPeople()
        {
            List<String> people = new List<string>();

            people.Add("Dave");
            people.Add("Fred");
            people.Add("Sarah");

            return people;
        }
    }
}

Open in new window

0
 
LVL 19

Expert Comment

by:daveamour
ID: 33483734
om_prakash_p is right - sorry I didn't see you had a ListItem already there!
0
 

Author Closing Comment

by:rondre
ID: 33486149
thank you - that works perfect!
0

Featured Post

Concerto's Cloud Advisory Services

Want to avoid the missteps to gaining all the benefits of the cloud? Learn more about the different assessment options from our Cloud Advisory team.

Question has a verified solution.

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

Exception Handling is in the core of any application that is able to dignify its name. In this article, I'll guide you through the process of writing a DRY (Don't Repeat Yourself) Exception Handling mechanism, using Aspect Oriented Programming.
Performance in games development is paramount: every microsecond counts to be able to do everything in less than 33ms (aiming at 16ms). C# foreach statement is one of the worst performance killers, and here I explain why.
This lesson discusses how to use a Mainform + Subforms in Microsoft Access to find and enter data for payments on orders. The sample data comes from a custom shop that builds and sells movable storage structures that are delivered to your property. …
As many of you are aware about Scanpst.exe utility which is owned by Microsoft itself to repair inaccessible or damaged PST files, but the question is do you really think Scanpst.exe is capable to repair all sorts of PST related corruption issues?
Suggested Courses
Course of the Month15 days, 22 hours left to enroll

850 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