日付コントロールは日付の入力に特化したコントロールです。西暦・和暦の両方に対応しており、入力時と表示時それぞれにおいて日付の書式を設定できます。
using System; public partial class Format_GcDate : System.Web.UI.Page { protected void Page_Load(object sender, EventArgs e) { if(!IsPostBack) { // 初期値を設定します。 GcComboBox1.SelectedIndex = 0; GcComboBox2.SelectedIndex = 0; GcComboBox3.SelectedIndex = 0; GcComboBox4.SelectedIndex = 0; } } protected void Button1_Click(object sender, EventArgs e) { // 書式を設定します。 GcDate1.Format.Pattern = GcComboBox1.Text; GcDate1.DisplayFormat.Pattern = GcComboBox2.Text; // カレットの位置を設定します。 GcDate1.CursorPosition = (GrapeCity.Web.Input.IMDate.DateCursorPosition)GcComboBox3.SelectedIndex; // 改行コードの扱いを設定します。 GcDate1.AcceptsCrLf = (GrapeCity.Web.Input.Core.CrLfMode)GcComboBox4.SelectedIndex; // プロンプト文字を設定します。 GcDate1.PromptChar = Convert.ToChar(GcTextBox1.Text); } }
Partial Class Format_GcDate Inherits System.Web.UI.Page Protected Sub Page_Load(sender As Object, e As System.EventArgs) Handles Me.Load If Not IsPostBack Then ' 初期値を設定します。 GcComboBox1.SelectedIndex = 0 GcComboBox2.SelectedIndex = 0 GcComboBox3.SelectedIndex = 0 GcComboBox4.SelectedIndex = 0 End If End Sub Protected Sub Button1_Click(sender As Object, e As System.EventArgs) Handles Button1.Click ' 書式を設定します。 GcDate1.Format.Pattern = GcComboBox1.Text GcDate1.DisplayFormat.Pattern = GcComboBox2.Text ' カレットの位置を設定します。 GcDate1.CursorPosition = GcComboBox3.SelectedIndex ' 改行コードの扱いを設定します。 GcDate1.AcceptsCrLf = GcComboBox4.SelectedIndex ' プロンプト文字を設定します。 GcDate1.PromptChar = GcTextBox1.Text End Sub End Class
<%@ page title="" language="C#" masterpagefile="~/MasterPage.master" autoeventwireup="true" inherits="Format_GcDate, App_Web_fdb404xk" theme="SkinFile" %> <%@ Register assembly="GrapeCity.Web.Input.v100, Version=10.0.4006.2012, Culture=neutral, PublicKeyToken=c3bd7c1dccef5128" namespace="GrapeCity.Web.Input.IMDate" tagprefix="im_date" %> <%@ Register assembly="GrapeCity.Web.Input.v100, Version=10.0.4006.2012, Culture=neutral, PublicKeyToken=c3bd7c1dccef5128" namespace="GrapeCity.Web.Input.IMCombo" tagprefix="im_combo" %> <%@ Register assembly="GrapeCity.Web.Input.v100, Version=10.0.4006.2012, Culture=neutral, PublicKeyToken=c3bd7c1dccef5128" namespace="GrapeCity.Web.Input.IMEdit" tagprefix="im_edit" %> <asp:Content ID="Content1" ContentPlaceHolderID="head" Runat="Server"> <script type="text/javascript"> // 入力書式を設定します。 function GcComboBox1_TextChanged(sender, eArgs) { if (!document.getElementById("isClient").checked) return; FindIMControl("<% =GcDate1.ClientID %>").SetFormatPattern(sender.GetText()); } // 表示書式を設定します。 function GcComboBox2_TextChanged(sender, eArgs) { if (!document.getElementById("isClient").checked) return; FindIMControl("<% =GcDate1.ClientID %>").SetDisplayFormatPattern(sender.GetText()); } // キャレット位置を設定します。 function GcComboBox3_SelectedIndexChanged(sender, eArgs) { if (!document.getElementById("isClient").checked) return; FindIMControl("<% =GcDate1.ClientID %>").SetCursorPosition(sender.GetSelectedItem().SubItems[1].GetValue()); } // 改行コードの扱いを設定します。 function GcComboBox4_SelectedIndexChanged(sender, eArgs) { if (!document.getElementById("isClient").checked) return; FindIMControl("<% =GcDate1.ClientID %>").SetAcceptsCrLf(sender.GetSelectedItem().SubItems[1].GetValue()); } // プロンプト文字を設定します。 function GcTextBox1_TextChanged(sender, eArgs) { if (!document.getElementById("isClient").checked) return; FindIMControl("<% =GcDate1.ClientID %>").SetPromptChar(sender.GetText()); } </script> </asp:Content> <asp:Content ID="Content2" ContentPlaceHolderID="ContentPlaceHolder1" Runat="Server"> <div class="sample"> <table> <tr> <th>入力確認</th> </tr> <tr> <td> <im_date:GcDate ID="GcDate1" runat="server" HasLoadFromXml="True" Width="300px"> </im_date:GcDate> </td> </tr> </table> </div> <label style="font-size:80%;"><input type="checkbox" id="isClient" checked="checked" /> クライアント側の設定を有効にする</label> <table class="inputTable"> <tr> <th class="inputTh">入力書式</th> <td class="inputTd"> <im_combo:GcComboBox ID="GcComboBox1" runat="server" HasLoadFromXml="True" Width="200px" ItemsChanged="False"> <clientevents textchanged="GcComboBox1_TextChanged"></clientevents> <ListBox AutoWidth="True" /> <listheaderpane visible="True"></listheaderpane> <defaultcolumn autowidth="True"></defaultcolumn> <listcolumn header-text="書式"></listcolumn> <listcolumn header-text="説明"></listcolumn> <comboitem></comboitem> <subitem index="0" value="yyyy/MM/dd"></subitem> <subitem index="0" value="日付(2015/01/01)"></subitem> <comboitem></comboitem> <subitem index="1" value="yyyy年MM月dd日"></subitem> <subitem index="1" value="日付(2015年01月01日)"></subitem> <comboitem></comboitem> <subitem index="2" value="yy年MM月dd日"></subitem> <subitem index="2" value="日付(15年01月01日)"></subitem> <comboitem></comboitem> <subitem index="3" value="gggee年MM月dd日"></subitem> <subitem index="3" value="日付(平成27年01月01日)"></subitem> <comboitem></comboitem> <subitem index="4" value="gg ee年MM月dd日"></subitem> <subitem index="4" value="日付(平 27年01月01日)"></subitem> <comboitem></comboitem> <subitem index="5" value="g. ee/MM/dd"></subitem> <subitem index="5" value="日付(H. 27/01/01)"></subitem> <helpvalue ></helpvalue> </im_combo:GcComboBox> </td> </tr> <tr> <th class="inputTh">表示書式</th> <td class="inputTd"> <im_combo:GcComboBox ID="GcComboBox2" runat="server" HasLoadFromXml="True" Width="200px" ItemsChanged="False"> <clientevents textchanged="GcComboBox2_TextChanged"></clientevents> <ListBox AutoWidth="True" /> <listheaderpane visible="True"></listheaderpane> <defaultcolumn autowidth="True"></defaultcolumn> <listcolumn header-text="書式"></listcolumn> <listcolumn header-text="説明"></listcolumn> <comboitem></comboitem> <subitem index="0" value="yyy/M/d"></subitem> <subitem index="0" value="日付(2015/1/1)"></subitem> <comboitem></comboitem> <subitem index="1" value="yyy年M月d日"></subitem> <subitem index="1" value="日付(2015年1月1日)"></subitem> <comboitem></comboitem> <subitem index="2" value="y/M/d"></subitem> <subitem index="2" value="日付(15/1/1)"></subitem> <comboitem></comboitem> <subitem index="3" value="y年M月d日(ddd)"></subitem> <subitem index="3" value="日付(15年1月1日(木))"></subitem> <comboitem></comboitem> <subitem index="4" value="gggE年M月d日 dddd"></subitem> <subitem index="4" value="日付(平成元年1月1日 金曜日)"></subitem> <comboitem></comboitem> <subitem index="5" value="gg e年M月d日"></subitem> <subitem index="5" value="日付(平 27年1月1日)"></subitem> <comboitem></comboitem> <subitem index="6" value="g. e/M/d"></subitem> <subitem index="6" value="日付(H. 27/1/1)"></subitem> <helpvalue ></helpvalue> </im_combo:GcComboBox> </td> </tr> <tr> <th class="inputTh">キャレット位置</th> <td class="inputTd"> <im_combo:GcComboBox ID="GcComboBox3" runat="server" HasLoadFromXml="True" Width="200px" DropDownStyle="DropDownList"> <clientevents selectedindexchanged="GcComboBox3_SelectedIndexChanged"></clientevents> <comboitem></comboitem> <subitem index="0" value="先頭のフィールド"></subitem> <subitem index="0" value="default"></subitem> <comboitem></comboitem> <subitem index="1" value="年号フィールド"></subitem> <subitem index="1" value="era"></subitem> <comboitem></comboitem> <subitem index="2" value="年フィールド"></subitem> <subitem index="2" value="year"></subitem> <comboitem></comboitem> <subitem index="3" value="月フィールド"></subitem> <subitem index="3" value="month"></subitem> <comboitem></comboitem> <subitem index="4" value="日フィールド"></subitem> <subitem index="4" value="day"></subitem> <helpvalue ></helpvalue> </im_combo:GcComboBox> </td> </tr> <tr> <th class="inputTh">改行コードの扱い</th> <td class="inputTd"> <im_combo:GcComboBox ID="GcComboBox4" runat="server" HasLoadFromXml="True" DropDownStyle="DropDownList" Width="200px"><clientevents selectedindexchanged="GcComboBox4_SelectedIndexChanged"></clientevents> <ListBox OverflowTip="True" Width="220"/> <comboitem></comboitem> <subitem index="0" value="そのまま使用"></subitem> <subitem index="0" value="nocontrol"></subitem> <comboitem></comboitem> <subitem index="1" value="すべての改行コードを削除"></subitem> <subitem index="1" value="filter"></subitem> <comboitem></comboitem> <subitem index="2" value="改行コード以降の文字列を切り取り"></subitem> <subitem index="2" value="cut"></subitem> <helpvalue ></helpvalue> </im_combo:GcComboBox> </td> </tr> <tr> <th class="inputTh">プロンプト文字:</th> <td class="inputTd"> <im_edit:GcTextBox ID="GcTextBox1" runat="server" HasLoadFromXml="True" MaxLength="1" Text="_" Width="80px"><clientevents textchanged="GcTextBox1_TextChanged"></clientevents></im_edit:GcTextBox> </td> </tr> </table> <center> <asp:Button ID="Button1" runat="server" CssClass="button_nowidth" Text="サーバー側で設定" onclick="Button1_Click" /> </center> </asp:Content>