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/ASPxGridView.aspx

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

<script runat="server">
    public class DataObject {
        public int Column0 { get; set; }
        public string Column1 { get; set; }
        public string Column2 { get; set; }
        public string GroupedColumn { get; set; }
        public string Preview { get; set; }
    }
    protected void Page_Load(object sender, EventArgs e) {
        ASPxGridView1.Enabled = !chbDisabled.Checked;    
        chbShowLoadingPanel.Enabled = !chbDisabled.Checked;
        lblShowLoadingPanel.Enabled = !chbDisabled.Checked;
        chbShowCustWindow.Enabled = !chbDisabled.Checked;
        lblShowCustWindow.Enabled = !chbDisabled.Checked;
        ASPxGridView1.SettingsBehavior.EnableCustomizationWindow = !chbDisabled.Checked;
        
        ASPxGridView1.RightToLeft = chbRtl.Checked ? DefaultBoolean.True : DefaultBoolean.False;
        RtlContainer.RightToLeft = ASPxGridView1.RightToLeft;
        
        ASPxGridView1.SettingsEditing.Mode = (GridViewEditingMode)Enum.Parse(typeof(GridViewEditingMode), (string)cbEditFormMode.Value);
        ASPxGridView1.Settings.ShowTitlePanel = chbShowTitle.Checked;
        ASPxGridView1.Settings.ShowGroupPanel = chbShowGroupPanel.Checked;
        ASPxGridView1.SettingsDetail.ShowDetailRow = chbShowDetailRow.Checked;
        ASPxGridView1.Settings.ShowPreview = chbShowPreview.Checked;
        ASPxGridView1.Settings.ShowFilterBar = chbShowFilterBar.Checked ? GridViewStatusBarMode.Visible : GridViewStatusBarMode.Hidden;
        ASPxGridView1.Settings.ShowStatusBar = chbShowStatusBar.Checked ? GridViewStatusBarMode.Visible : GridViewStatusBarMode.Hidden;
        ASPxGridView1.SettingsPager.RenderMode = (ControlRenderMode)Enum.Parse(typeof(ControlRenderMode),
                cbxPagerRenderMode.Value.ToString());
        ASPxGridView1.SettingsPager.Position = (PagerPosition)Enum.Parse(typeof(PagerPosition),
                cbxPagerPosition.Value.ToString());
        (ASPxGridView1.Columns["CommandColumn"] as GridViewCommandColumn).ButtonType =
            (ButtonType)Enum.Parse(typeof(ButtonType), cbxCommandButtonType.Value.ToString());
        ASPxGridView1.SettingsLoadingPanel.Mode = (GridViewLoadingPanelMode)Enum.Parse(typeof(GridViewLoadingPanelMode),
                cbxLoadingPanelMode.Value.ToString());
        

        ASPxGridView1.DataSource = CreateDataSource();
        ASPxGridView1.DataBind();
        ASPxGridView1.ExpandRow(0);
        ASPxGridView1.DetailRows.ExpandRow(1);
        ASPxGridView1.Selection.SelectRow(3);
        ASPxGridView1.FocusedRowIndex = 1;
        
        ShowOptions();
    }
    protected override void LoadOptions() {
        LoadOption<GridViewEditingMode>("EditMode", delegate(GridViewEditingMode value) { cbEditFormMode.Value = Enum.GetName(typeof(GridViewEditingMode), value); }, GridViewEditingMode.EditForm);
        LoadOption<ControlRenderMode>("PagerRenderMode", delegate(ControlRenderMode value) { cbxPagerRenderMode.Value = Enum.GetName(typeof(ControlRenderMode), value); }, ControlRenderMode.Classic);
        LoadOption<PagerPosition>("PagerPostion", delegate(PagerPosition value) { cbxPagerPosition.Value = Enum.GetName(typeof(PagerPosition), value); }, PagerPosition.TopAndBottom);
        LoadOption<GridViewLoadingPanelMode>("LoadingPanelMode", delegate(GridViewLoadingPanelMode value) { cbxLoadingPanelMode.Value = Enum.GetName(typeof(GridViewLoadingPanelMode), value); }, GridViewLoadingPanelMode.ShowAsPopup);
        LoadOption<ButtonType>("ButtonType", delegate(ButtonType value) { cbxCommandButtonType.Value = Enum.GetName(typeof(ButtonType), value); }, ButtonType.Link);
        LoadOption<bool>("ShowTitle", delegate(bool value) { chbShowTitle.Checked = value; }, true);
        LoadOption<bool>("ShowGroupPanel", delegate(bool value) { chbShowGroupPanel.Checked = value; }, true);
        LoadOption<bool>("ShowFilterBar", delegate(bool value) { chbShowFilterBar.Checked = value; }, true);
        LoadOption<bool>("ShowPreview", delegate(bool value) { chbShowPreview.Checked = value; }, false);
        LoadOption<bool>("ShowDetailRow", delegate(bool value) { chbShowDetailRow.Checked = value; }, false);
        LoadOption<bool>("ShowStatusBar", delegate(bool value) { chbShowStatusBar.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<GridViewEditingMode>("EditMode", delegate() { return (GridViewEditingMode)Enum.Parse(typeof(GridViewEditingMode), cbEditFormMode.Value.ToString()); });
        SaveOption<ControlRenderMode>("PagerRenderMode", delegate() { return (ControlRenderMode)Enum.Parse(typeof(ControlRenderMode), cbxPagerRenderMode.Value.ToString()); });
        SaveOption<PagerPosition>("PagerPostion", delegate() { return (PagerPosition)Enum.Parse(typeof(PagerPosition), cbxPagerPosition.Value.ToString()); });
        SaveOption<GridViewLoadingPanelMode>("LoadingPanelMode", delegate() { return (GridViewLoadingPanelMode)Enum.Parse(typeof(GridViewLoadingPanelMode), cbxLoadingPanelMode.Value.ToString()); });
        SaveOption<ButtonType>("ButtonType", delegate() { return (ButtonType)Enum.Parse(typeof(ButtonType), cbxCommandButtonType.Value.ToString()); });
        SaveOption<bool>("ShowTitle", delegate() { return chbShowTitle.Checked; });
        SaveOption<bool>("ShowGroupPanel", delegate() { return chbShowGroupPanel.Checked; });
        SaveOption<bool>("ShowFilterBar", delegate() { return chbShowFilterBar.Checked; });
        SaveOption<bool>("ShowPreview", delegate() { return chbShowPreview.Checked; });
        SaveOption<bool>("ShowDetailRow", delegate() { return chbShowDetailRow.Checked; });
        SaveOption<bool>("ShowStatusBar", delegate() { return chbShowStatusBar.Checked; });
        SaveOption<bool>("Disabled", delegate() { return chbDisabled.Checked; });
        SaveOption<bool>("Rtl", delegate() { return chbRtl.Checked; });
    }
    protected DataObject[] CreateDataSource() {
        int recordCount = 50;
        DataObject[] data = new DataObject[recordCount];
        for(int i = 0; i < recordCount; i++) {
            data[i] = new DataObject
            {
                Column0 = i,
                Column1 = i % 2 == 0 ? "Data Row" : "Alternative Data Row",
                Column2 = i % 2 == 0 ? "Data Row" : "Alternative Data Row",
                GroupedColumn = "Groupped Row " + (i / 3).ToString(),
                Preview = "Preview"
            };
        }
        return data;
    }
</script>
<asp:Content runat="server" ID="Content3" ContentPlaceHolderID="phHead">
    <script type="text/javascript" src="Scripts/PreviewHelpers/CheckBox.js"></script>
    <script type="text/javascript" src="Scripts/PreviewHelpers/PopupControl.js"></script>
    <script type="text/javascript" src="Scripts/PreviewHelpers/Menu.js"></script>
    <script type="text/javascript" src="Scripts/PreviewHelpers/PopupMenu.js"></script>
    <script type="text/javascript" src="Scripts/PreviewHelpers/Pager.js"></script>
    <script type="text/javascript" src="Scripts/PreviewHelpers/GridView.js"></script>
</asp:Content>
<asp:Content ID="Content2" ContentPlaceHolderID="phComponent" runat="Server">
    <dx:ASPxGridView ID="ASPxGridView1" runat="server" AutoGenerateColumns="False" KeyFieldName="Column0"
        PreviewFieldName="Preview" Width="800px" ClientInstanceName="gv">
        <ClientSideEvents Init="function(s, e) { new ASPxGridViewPreviewHelper(s); }" />
        <Columns>
            <dx:GridViewCommandColumn Name="CommandColumn" VisibleIndex="0" ShowSelectCheckbox="true">
                <NewButton Visible="true" Text="New" Image-Url="Images/sample-image14x14.gif">
                </NewButton>
                <EditButton Visible="true" Text="Edit" Image-Url="Images/sample-image14x14.gif">
                </EditButton>
                <UpdateButton Visible="true" Text="Update" Image-Url="Images/sample-image14x14.gif">
                </UpdateButton>
                <CancelButton Visible="true" Text="Cancel" Image-Url="Images/sample-image14x14.gif">
                </CancelButton>
                <DeleteButton Visible="true" Text="Delete" Image-Url="Images/sample-image14x14.gif">
                </DeleteButton>
            </dx:GridViewCommandColumn>
            <dx:GridViewDataTextColumn FieldName="Column0" Caption="Column" VisibleIndex="1" SortOrder="Ascending">
                <Settings HeaderFilterMode="CheckedList" />
            </dx:GridViewDataTextColumn>
            <dx:GridViewDataTextColumn FieldName="Column1" Caption="Column" VisibleIndex="2">
            </dx:GridViewDataTextColumn>
            <dx:GridViewDataTextColumn FieldName="Column2" Caption="Column" VisibleIndex="3"
                Visible="false">
            </dx:GridViewDataTextColumn>
            <dx:GridViewDataTextColumn FieldName="GroupedColumn" Caption="Grouped Column" VisibleIndex="4"
                GroupIndex="0" SortOrder="Descending">
            </dx:GridViewDataTextColumn>
        </Columns>
        <Templates>
            <DetailRow>
                Detail Row
            </DetailRow>
            <TitlePanel>
                Title panel
            </TitlePanel>
        </Templates>
        <GroupSummary>
            <dx:ASPxSummaryItem FieldName="Column0" ShowInGroupFooterColumn="Column0" SummaryType="Max" />
        </GroupSummary>
        <TotalSummary>
            <dx:ASPxSummaryItem FieldName="Column0" SummaryType="Count" />
        </TotalSummary>
        <SettingsBehavior AllowFocusedRow="true"  EnableRowHotTrack="true" />
        <SettingsDetail ShowDetailRow="true" />
        <SettingsEditing Mode="EditForm" />
        <SettingsCustomizationWindow Enabled="true" />
        <Settings ShowFilterRow="True" ShowGroupPanel="True" ShowPreview="true" ShowFooter="true"
            ShowFilterBar="Visible" ShowFilterRowMenu="true" ShowHeaderFilterButton="true" ShowTitlePanel="true"
            ShowGroupFooter="VisibleAlways" />
        <SettingsPager PageSize="5" Position="TopAndBottom">
            <AllButton Visible="true"></AllButton>
            <FirstPageButton Visible="true"></FirstPageButton>
            <LastPageButton Visible="true"></LastPageButton>
            <PrevPageButton Visible="true"></PrevPageButton>
            <NextPageButton Visible="true"></NextPageButton>
			<PageSizeItemSettings Visible="true" Items="5, 10, 20"></PageSizeItemSettings>
        </SettingsPager>
        <Styles>
            <AlternatingRow Enabled="True">
            </AlternatingRow>
        </Styles>
    </dx:ASPxGridView>
    <script type="text/javascript">
        ASPxTBHelper.OnSelectionModeChanged = function (selectionMode) {
            if(!ASPxClientControl.GetControlCollection().GetByName('chbShowLoadingPanel'))
                return;

            if (!selectionMode)
                chbShowLoadingPanel.SetChecked(false);
        };
    </script>
</asp:Content>
<asp:Content ID="Content1" ContentPlaceHolderID="phOptions" runat="server">
    <table>
        <tr>
            <td>
                <dx:ASPxLabel runat="server" ID="lblEditFormMode" CssClass="label" SkinID="Option"
                    Text="Edit form mode:" AssociatedControlID="cbEditFormMode">
                </dx:ASPxLabel>
            </td>
            <td>
                <dx:ASPxComboBox runat="server" ID="cbEditFormMode" AutoPostBack="true" CssClass="editor dropDown"
                    SkinID="Option" SelectedIndex="1" Width="165px">
                    <Items>
                        <dx:ListEditItem Text="Inline" Value="Inline" />
                        <dx:ListEditItem Text="EditForm" Value="EditForm" />
                        <dx:ListEditItem Text="EditFormAndDisplayRow" Value="EditFormAndDisplayRow" />
                        <dx:ListEditItem Text="PopupEditForm" Value="PopupEditForm" />
                    </Items>
                </dx:ASPxComboBox>
            </td>
        </tr>
        <tr>
           <td>
                <dx:ASPxLabel ID="lblPagerRenderMode" runat="server" SkinID="Option" CssClass="label" Text="Pager render mode:"
                    AssociatedControlID="cbxPagerRenderMode">
                </dx:ASPxLabel>
            </td>
            <td>
                <dx:ASPxComboBox runat="server" ID="cbxPagerRenderMode" SkinID="Option" CssClass="editor dropDown"
                    AutoPostBack="true" SelectedIndex="0" Width="165px">
                    <Items>
                        <dx:ListEditItem Text="Classic" Value="Classic"></dx:ListEditItem>
                        <dx:ListEditItem Text="Lightweight" Value="Lightweight"></dx:ListEditItem>
                    </Items>
                </dx:ASPxComboBox>
            </td> 
        </tr>
        <tr>
           <td>
                <dx:ASPxLabel ID="lblPagerPosition" runat="server" SkinID="Option" CssClass="label" Text="Pager position:"
                    AssociatedControlID="cbxPagerPosition">
                </dx:ASPxLabel>
            </td>
            <td>
                <dx:ASPxComboBox runat="server" ID="cbxPagerPosition" SkinID="Option" CssClass="editor dropDown"
                    AutoPostBack="true" SelectedIndex="0" Width="165px">
                    <Items>
                        <dx:ListEditItem Text="TopAndBottom" Value="TopAndBottom"></dx:ListEditItem>
                        <dx:ListEditItem Text="Top" Value="Top"></dx:ListEditItem>
                        <dx:ListEditItem Text="Bottom" Value="Bottom"></dx:ListEditItem>
                    </Items>
                </dx:ASPxComboBox>
            </td> 
        </tr>
        <tr>
            <td>
                <dx:ASPxLabel runat="server" ID="lblCommandButtonType" SkinID="Option" CssClass="label"
                    Text="Command button type:" AssociatedControlID="cbxCommandButtonType">
                </dx:ASPxLabel>
            </td>
            <td>
                <dx:ASPxComboBox runat="server" ID="cbxCommandButtonType" SkinID="Option" CssClass="editor"
                    AutoPostBack="true" SelectedIndex="0">
                    <Items>
                        <dx:ListEditItem Text="Link" Value="Link" />
                        <dx:ListEditItem Text="Button" Value="Button" />
                        <dx:ListEditItem Text="Image" Value="Image" />
                    </Items>
                </dx:ASPxComboBox>
            </td>
        </tr>
        <tr>
            <td>
                <dx:ASPxLabel runat="server" ID="lblShowCustWindow" CssClass="label" SkinID="Option"
                    Text="Show customization window:" AssociatedControlID="chbShowCustWindow">
                </dx:ASPxLabel>
            </td>
            <td>
                <dx:ASPxCheckBox runat="server" ID="chbShowCustWindow" CssClass="editor" SkinID="Option">
                    <ClientSideEvents
                        CheckedChanged="function(s, e) { ASPxTBHelper.GetControlPreviewHelper(gv.name).SetCustomizationWindowVisibility(s.GetChecked()); }" />
                </dx:ASPxCheckBox>
            </td>
        </tr>
        <tr>
            <td>
                <dx:ASPxLabel runat="server" ID="lblShowTitle" CssClass="label" SkinID="Option"
                    Text="Show title:" AssociatedControlID="chbShowTitle">
                </dx:ASPxLabel>
            </td>
            <td>
                <dx:ASPxCheckBox runat="server" ID="chbShowTitle" CssClass="editor" SkinID="Option" AutoPostBack="true"
                    Checked="true">
                </dx:ASPxCheckBox>
            </td>
        </tr>
        <tr>
            <td>
                <dx:ASPxLabel runat="server" ID="lblShowGroupPanel" CssClass="label" SkinID="Option"
                    Text="Show group panel:" AssociatedControlID="chbShowGroupPanel">
                </dx:ASPxLabel>
            </td>
            <td>
                <dx:ASPxCheckBox runat="server" ID="chbShowGroupPanel" CssClass="editor" SkinID="Option" AutoPostBack="true"
                    Checked="true">
                </dx:ASPxCheckBox>
            </td>
        </tr>
        <tr>
            <td>
                <dx:ASPxLabel runat="server" ID="lblShowPreview" CssClass="label" SkinID="Option"
                    Text="Show preview row:" AssociatedControlID="chbShowPreview">
                </dx:ASPxLabel>
            </td>
            <td>
                <dx:ASPxCheckBox runat="server" ID="chbShowPreview" CssClass="editor" SkinID="Option" AutoPostBack="true"
                    Checked="true">
                </dx:ASPxCheckBox>
            </td>
        </tr>
        <tr>
            <td>
                <dx:ASPxLabel runat="server" ID="lblShowDetailRow" CssClass="label" SkinID="Option"
                    Text="Show detail row:" AssociatedControlID="chbShowDetailRow">
                </dx:ASPxLabel>
            </td>
            <td>
                <dx:ASPxCheckBox runat="server" ID="chbShowDetailRow" CssClass="editor" SkinID="Option" AutoPostBack="true">
                </dx:ASPxCheckBox>
            </td>
        </tr>
        <tr>
            <td>
                <dx:ASPxLabel runat="server" ID="lblShowFilterBar" CssClass="label" SkinID="Option"
                    Text="Show filter bar:" AssociatedControlID="chbShowFilterBar">
                </dx:ASPxLabel>
            </td>
            <td>
                <dx:ASPxCheckBox runat="server" ID="chbShowFilterBar" CssClass="editor" SkinID="Option" AutoPostBack="true"
                    Checked="true">
                </dx:ASPxCheckBox>
            </td>
        </tr>
        <tr>
            <td>
                <dx:ASPxLabel runat="server" ID="lblShowStatusBar" CssClass="label" SkinID="Option"
                    Text="Show status bar:" AssociatedControlID="chbShowStatusBar">
                </dx:ASPxLabel>
            </td>
            <td>
                <dx:ASPxCheckBox runat="server" ID="chbShowStatusBar" CssClass="editor" SkinID="Option" AutoPostBack="true">
                </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 ID="lblLoadingPanelMode" runat="server" SkinID="Option" CssClass="label" Text="Loading panel mode:"
                    AssociatedControlID="cbxLoadingPanelMode">
                </dx:ASPxLabel>
            </td>
            <td>
                <dx:ASPxComboBox runat="server" ID="cbxLoadingPanelMode" SkinID="Option" CssClass="editor dropDown"
                    AutoPostBack="true" SelectedIndex="0" Width="165px">
                    <Items>
                        <dx:ListEditItem Text="ShowAsPopup" Value="ShowAsPopup"></dx:ListEditItem>
                        <dx:ListEditItem Text="ShowOnStatusBar" Value="ShowOnStatusBar"></dx:ListEditItem>
                    </Items>
                </dx:ASPxComboBox>
            </td> 
        </tr>
        <tr>
            <td>
                <dx:ASPxLabel runat="server" ID="lblShowLoadingPanel" CssClass="label" SkinID="Option"
                    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(gv, s.GetChecked()); }" 
                        Init="function(s,e){ ASPxTBHelper.SetControlLoadingPanelVisibility(gv, s.GetChecked()); }" />
                </dx:ASPxCheckBox>
            </td>
        </tr>
    </table>
</asp:Content>