?
Solved

DropDownList default value.

Posted on 2011-03-08
6
Medium Priority
?
588 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
[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
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
Get your Disaster Recovery as a Service basics

Disaster Recovery as a Service is one go-to solution that revolutionizes DR planning. Implementing DRaaS could be an efficient process, easily accessible to non-DR experts. Learn about monitoring, testing, executing failovers and failbacks to ensure a "healthy" DR environment.

 
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 2000 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

Migrating Your Company's PCs

To keep pace with competitors, businesses must keep employees productive, and that means providing them with the latest technology. This document provides the tips and tricks you need to help you migrate an outdated PC fleet to new desktops, laptops, and tablets.

Question has a verified solution.

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

The article shows the basic steps of integrating an HTML theme template into an ASP.NET MVC project
When using a search centre, I'm going to show you how to configure Sharepoint's search to only return results from the current site collection. Very useful when using Office 365 with multiple site collections.
Add bar graphs to Access queries using Unicode block characters. Graphs appear on every record in the color you want. Give life to numbers. Hopes this gives you ideas on visualizing your data in new ways ~ Create a calculated field in a query: …
In this video you will find out how to export Office 365 mailboxes using the built in eDiscovery tool. Bear in mind that although this method might be useful in some cases, using PST files as Office 365 backup is troublesome in a long run (more on t…
Suggested Courses

765 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