Solved

DropDownList default value.

Posted on 2011-03-08
6
571 Views
Last Modified: 2012-05-11
Using Sharepoint 2007 and Visula Studio 2008(vb.net),

I have an item in the DropDownList 'Select A Value'. This item is the first and the default value for the dropdownlist. The code is shown below for reference.

However, When the dropdownlist is required, and the user does not select a value other than the item 'Select A Value'. I need the sharepoint to prompt that the dropdownlist is a required field.

How can I do that or any suggestions? If you have any other clarifications, please let me know.
Public Class MetadataDropdown
    Inherits DropDownList
    Implements IMetadataUserControl

     Public Property MetadataCategory() As String Implements IMetadataUserControl.MetadataCategory

    ''' <summary>
    ''' Constructor
    ''' </summary>
    ''' <param name="collection"></param>
    ''' <param name="selectedValues"></param>
    ''' <remarks></remarks>
    Public Sub New(ByVal collection As MetadataCollection, ByVal selectedValues As String)
        PopulateControl(collection, selectedValues)
        CreateDefaultListitem()
    End Sub

    ''' <summary>
    ''' Overloaded Constructor
    ''' </summary>
    ''' <param name="collection"></param>
    ''' <param name="selectedValues"></param>
    ''' <param name="defaultText"></param>
    ''' <remarks></remarks>
    Public Sub New(ByVal collection As MetadataCollection, ByVal selectedValues As String, ByVal defaultText As String)
        LoadValue(collection, selectedValues)
        CreateDefaultListitem()
    End Sub

    ''' <summary>
    ''' This method creates the "Select A Value" default value listitem 
    ''' then insert it in the dropdown.
    ''' </summary>
    ''' <remarks></remarks>
    Public Sub CreateDefaultListitem()
        'Create the listItem "Select A Value"
        Dim defaultListitem As New System.Web.UI.WebControls.ListItem
        defaultListitem.Text = "Select A Value"
        defaultListitem.Value = Nothing
        'Insert the default Listitem in the dropdown.
        Me.Items.Insert(0, defaultListitem)
    End Sub

End Class

Open in new window

0
Comment
Question by:PagodNaUtak
6 Comments
 
LVL 53

Expert Comment

by:Dhaest
ID: 35068158
You can use a requiredfieldvalidator

http://msdn.microsoft.com/en-us/library/aa479013.aspx

<asp:RequiredFieldValidator id="RequiredFieldValidator1"  
  runat="server" ErrorMessage="Please make a selection"
  ControlToValidate="MetadataDropdown"
  InitialValue="Select A Value">
</asp:RequiredFieldValidator>
0
 
LVL 8

Author Comment

by:PagodNaUtak
ID: 35068228
@Dhaest, Thank you for your comment or suggestion.

but I could not implement your suggestion because it is a sharepoint page.
When you create a sharepoint page validation is automatically added.

I think the problem is that by default the selected item is the first item which is has the index of 0.
First item is the 'Select A Value'.

So, logically if the validation is checked there is actually a selected item. I just want to know that if there is a way in sharepoint that once the selected item in dropdownlist is 'Select A Value' or the SelectedIndex is 0, it will treat it as no selection or the selected index is -1.

Please, let me know if you need clarifications.

Again thank you for your suggestion.
0
 
LVL 10

Expert Comment

by:John Claes
ID: 35068311
why don't you use the Range validation ?
giving a 0 as the default but setting the range validation from 1 till ....
That way the validation stays failing if the default is still selected

regards
poor beggar
0
Highfive Gives IT Their Time Back

Highfive is so simple that setting up every meeting room takes just minutes and every employee will be able to start or join a call from any room with ease. Never be called into a meeting just to get it started again. This is how video conferencing should work!

 
LVL 8

Author Comment

by:PagodNaUtak
ID: 35068340
Hi, as posted in the ID:35068228, same reason with required field validator why I can't implement your suggestion.

regards,

Joseph
0
 
LVL 29

Accepted Solution

by:
Paul Jackson earned 500 total points
ID: 35068919
Instead of giving the default item a value of 0 try an empty string ""
0
 
LVL 8

Author Closing Comment

by:PagodNaUtak
ID: 35079709
Thanks! Perfect!
0

Featured Post

What Security Threats Are You Missing?

Enhance your security with threat intelligence from the web. Get trending threat insights on hackers, exploits, and suspicious IP addresses delivered to your inbox with our free Cyber Daily.

Join & Write a Comment

The ECB site provides FX rates for major currencies since its inception in 1999 in the form of an XML feed. The files have the following format (reducted for brevity) (CODE) There are three files available HERE (http://www.ecb.europa.eu/stats/exch…
International Data Corporation (IDC) prognosticates that before the current the year gets over disbursing on IT framework products to be sent in cloud environs will be $37.1B.
In this seventh video of the Xpdf series, we discuss and demonstrate the PDFfonts utility, which lists all the fonts used in a PDF file. It does this via a command line interface, making it suitable for use in programs, scripts, batch files — any pl…
In this tutorial you'll learn about bandwidth monitoring with flows and packet sniffing with our network monitoring solution PRTG Network Monitor (https://www.paessler.com/prtg). If you're interested in additional methods for monitoring bandwidt…

746 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

Need Help in Real-Time?

Connect with top rated Experts

10 Experts available now in Live!

Get 1:1 Help Now