Mini Kabibi Habibi

Current Path : C:/Program Files (x86)/DevExpress/DXperience 13.1/Tools/ASP.NET/Site/
Upload File :
Current File : C:/Program Files (x86)/DevExpress/DXperience 13.1/Tools/ASP.NET/Site/ASPxListBox.aspx

<%@ Page Title="" Language="C#" MasterPageFile="~/Site.master" Inherits="ASPxThemeBuilderSite.BasePage" %>

<script runat="server">
    public class DataObject {
        public string Column0 { get; set; }
        public string Column1 { get; set; }
        public string Column2 { get; set; }
        public string Column3 { get; set; }
    }  
    
    protected void Page_Load(object sender, EventArgs e) {
        ASPxListBox1.Enabled = !chbDisabled.Checked;

        chbShowLoadingPanel.Enabled = !chbDisabled.Checked;
        lblShowLoadingPanel.Enabled = !chbDisabled.Checked;

        lblShowError.Enabled = !chbDisabled.Checked;
        chbShowError.Enabled = !chbDisabled.Checked;

        ASPxListBox1.ValidationSettings.EnableCustomValidation = chbShowError.Checked;
        ASPxListBox1.IsValid = !chbShowError.Checked;
        
        ASPxListBox1.Native = chbNative.Checked;
        ASPxListBox1.RightToLeft = chbRtl.Checked ? DefaultBoolean.True : DefaultBoolean.False;
        RtlContainer.RightToLeft = ASPxListBox1.RightToLeft;

        chbShowImageColumn.Enabled = chbMultipleColumns.Checked;
        if(chbMultipleColumns.Checked) {
            ASPxListBox1.ImageUrlField = chbShowImageColumn.Checked ? "Column0" : "";
            ASPxListBox1.ItemImage.Width = chbShowImageColumn.Checked ? Unit.Pixel(14) : Unit.Empty;
            ASPxListBox1.ItemImage.Height = chbShowImageColumn.Checked ? Unit.Pixel(14) : Unit.Empty;
            
            ASPxListBox1.Columns.Add("Column1");
            ASPxListBox1.Columns.Add("Column3");
            ASPxListBox1.Columns.Add("Column2");
            ASPxListBox1.DataSource = CreateDataSource();
            ASPxListBox1.DataBind();
        }

        ASPxListBox1.SelectedItem = ASPxListBox1.Items[0];
        ShowOptions();
    }
    protected override void LoadOptions() {
        LoadOption<bool>("Native", delegate(bool value) { chbNative.Checked = value; }, false);
        LoadOption<bool>("MultipleColumns", delegate(bool value) { chbMultipleColumns.Checked = value; }, false);
        LoadOption<bool>("ShowImageColumn", delegate(bool value) { chbShowImageColumn.Checked = value; }, false);
        LoadOption<bool>("ShowError", delegate(bool value) { chbShowError.Checked = value; }, false);
        LoadOption<bool>("Disabled", delegate(bool value) { chbDisabled.Checked = value; }, false);
        LoadOption<bool>("Rtl", delegate(bool value) { chbRtl.Checked = value; }, false);
    }
    protected override void SaveOptions() {
        SaveOption<bool>("Native", delegate() { return chbNative.Checked; });
        SaveOption<bool>("MultipleColumns", delegate() { return chbMultipleColumns.Checked; });
        SaveOption<bool>("ShowImageColumn", delegate() { return chbShowImageColumn.Checked; });
        SaveOption<bool>("ShowError", delegate() { return chbShowError.Checked; });
        SaveOption<bool>("Disabled", delegate() { return chbDisabled.Checked; });
        SaveOption<bool>("Rtl", delegate() { return chbRtl.Checked; });
    }
    protected DataObject[] CreateDataSource() {
        int itemCount = 50;
        DataObject[] res = new DataObject[itemCount];

        for(int i = 0; i < itemCount; i++) {
            res[i] = new DataObject { Column0 = "~/Images/sample-image14x14.gif", Column1 = string.Format("Item1{0}", i), Column2 = string.Format("Item2{0}", i), Column3 = string.Format("Item3{0}", i) };
        }

        return res;
    }
</script>

<asp:Content runat="server" ID="Content3" ContentPlaceHolderID="phHead">
     <script type="text/javascript" src="Scripts/PreviewHelpers/ListBox.js"></script>
</asp:Content>

<asp:Content ID="Content2" ContentPlaceHolderID="phComponent" runat="Server">
    <dx:ASPxListBox ID="ASPxListBox1" runat="server" SelectedIndex="0" EnableViewState="false" ClientInstanceName="lb">
        <ClientSideEvents Init="function(s, e) { new ASPxListBoxPreviewHelper(s); }" />
        <ValidationSettings ErrorText="Sample error text">
        </ValidationSettings>
        <Items>
            <dx:ListEditItem Text="Item" />
            <dx:ListEditItem Text="Item (with image)" ImageUrl="Images/sample-image14x14.gif" />
        </Items>
    </dx:ASPxListBox>
</asp:Content>
<asp:Content ID="Content1" ContentPlaceHolderID="phOptions" runat="server">
    <table>
        <tr>
            <td>
                <dx:ASPxLabel runat="server" ID="lblNative" CssClass="label" SkinID="Option" Text="Native:"
                    AssociatedControlID="chbNative">
                </dx:ASPxLabel>
            </td>
            <td>
                <dx:ASPxCheckBox runat="server" ID="chbNative" CssClass="editor" SkinID="Option" AutoPostBack="true">
                </dx:ASPxCheckBox>
            </td>
        </tr>
        <tr>
            <td>
               <dx:ASPxLabel runat="server" ID="lblMultipleColumns" CssClass="label" SkinID="Option" Text="Multiple columns:"
                AssociatedControlID="chbMultipleColumns">
                </dx:ASPxLabel> 
            </td>
            <td>
                <dx:ASPxCheckBox runat="server" ID="chbMultipleColumns" CssClass="editor" SkinID="Option" Checked="false" AutoPostBack="true">
                </dx:ASPxCheckBox>
            </td>
        </tr>
        <tr>
            <td>
               <dx:ASPxLabel runat="server" ID="lblShowImageColumn" CssClass="label" SkinID="Option" Text="Show image column:"
                AssociatedControlID="chbShowImageColumn">
                </dx:ASPxLabel> 
            </td>
            <td>
                <dx:ASPxCheckBox runat="server" ID="chbShowImageColumn" CssClass="editor" SkinID="Option" Checked="false" AutoPostBack="true">
                </dx:ASPxCheckBox>
            </td>
        </tr>
        <tr>
            <td>
                <dx:ASPxLabel runat="server" ID="lblShowError" SkinID="Option" CssClass="label" Text="Show error frame:"
                    AssociatedControlID="chbShowError">
                </dx:ASPxLabel>
            </td>
            <td>
                <dx:ASPxCheckBox runat="server" ID="chbShowError" SkinID="Option" CssClass="editor" AutoPostBack="true"
                    ClientInstanceName="chbShowError">
                </dx:ASPxCheckBox>
            </td>
        </tr>
        <tr>
            <td>
                <dx:ASPxLabel runat="server" ID="lblRtl" SkinID="Option" CssClass="label" Text="Right to left:"
                    AssociatedControlID="chbRtl">
                </dx:ASPxLabel>
            </td>
            <td>
                <dx:ASPxCheckBox runat="server" ID="chbRtl" SkinID="Option" CssClass="editor" AutoPostBack="true">
                </dx:ASPxCheckBox>
            </td>
        </tr>
        <tr>
            <td>
                <dx:ASPxLabel runat="server" ID="lblEnabled" SkinID="Option" CssClass="label" Text="Disabled:"
                    AssociatedControlID="chbDisabled">
                </dx:ASPxLabel>
            </td>
            <td>
                <dx:ASPxCheckBox runat="server" ID="chbDisabled" SkinID="Option" Checked="false" CssClass="editor" AutoPostBack="true">
                </dx:ASPxCheckBox>
            </td>
        </tr>
        <tr>
            <td>
                <dx:ASPxLabel runat="server" ID="lblShowLoadingPanel" SkinID="Option" CssClass="label" Text="Show loading panel:"
                    AssociatedControlID="chbShowLoadingPanel">
                </dx:ASPxLabel>
            </td>
            <td>
                <dx:ASPxCheckBox runat="server" ID="chbShowLoadingPanel" CssClass="editor" SkinID="Option" ClientInstanceName="chbShowLoadingPanel">
                    <ClientSideEvents CheckedChanged="function(s,e){ ASPxTBHelper.SetControlLoadingPanelVisibility(lb, s.GetChecked()); }" 
                        Init="function(s,e){ ASPxTBHelper.SetControlLoadingPanelVisibility(lb, s.GetChecked()); }" />
                </dx:ASPxCheckBox>
            </td>
        </tr>
    </table>
</asp:Content>