2010-10-19 13:42:59 +00:00
using System ;
using System.Collections.Generic ;
using System.Linq ;
using System.Web ;
using umbraco.cms.businesslogic.datatype ;
namespace umbraco.editorControls.SettingControls
{
2013-10-21 18:36:46 +11:00
[Obsolete("IDataType and all other references to the legacy property editors are no longer used this will be removed from the codebase in future versions")]
2010-10-19 13:42:59 +00:00
public class ListBoxMultiple : DataEditorSettingType
{
private System . Web . UI . WebControls . ListBox lb = new System . Web . UI . WebControls . ListBox ( ) ;
private string _val = string . Empty ;
public override string Value
{
get
{
string retVal = string . Empty ;
foreach ( System . Web . UI . WebControls . ListItem item in lb . Items )
{
if ( item . Selected )
retVal + = item . Value + ";" ;
}
return retVal ;
}
set
{
if ( ! string . IsNullOrEmpty ( value ) )
_val = value ;
}
}
public override System . Web . UI . Control RenderControl ( DataEditorSetting sender )
{
lb . ID = sender . GetName ( ) ;
lb . SelectionMode = System . Web . UI . WebControls . ListSelectionMode . Multiple ;
lb . CssClass = "guiInputStandardSize" ;
lb . Items . Clear ( ) ;
foreach ( string s in Prevalues )
{
System . Web . UI . WebControls . ListItem item = new System . Web . UI . WebControls . ListItem ( s ) ;
if ( _val . Contains ( s + ";" ) )
item . Selected = true ;
2011-07-26 08:15:28 -02:00
2010-10-19 13:42:59 +00:00
lb . Items . Add ( item ) ;
}
2011-07-26 08:15:28 -02:00
if ( string . IsNullOrEmpty ( _val ) & & ! string . IsNullOrEmpty ( DefaultValue ) )
lb . SelectedValue = DefaultValue ;
2010-10-19 13:42:59 +00:00
return lb ;
}
}
}