方法 : ASP.NET Web サーバー コントロールにアクセス キーを設定する
更新 : 2007 年 11 月
アクセス キー (またはホットキー) を使用すると、Alt キーともう 1 つのキーを押してマウスを使用せずにページの特定のコントロールにジャンプできます。
アクセス キーは、TextBox コントロール、ListBox コントロールなどの特定のコントロールに設定できます。または、Label コントロールにアクセス キーを設定し、Label コントロールを別のコントロールに関連付けることもできます。この方法では、Label コントロールをキャプションとして使用し、ラベル テキストに下線付き文字でアクセス キーを示すことができます。
メモ : |
---|
アクセス キーおよびその他のキーボード ショートカットをサポートしていないブラウザもあります。 |
ASP.NET Web サーバー コントロールにアクセス キーを設定するには
キーボード ショートカットとして Alt キーと共に使用する文字または数字をコントロールの AccessKey プロパティに設定します。
たとえば、コントロールのアクセス キーを Alt+S に設定するには、コントロールの AccessKey プロパティを S に設定します。
メモ : Alt キー シーケンスの一部は、ブラウザで予約されていることがあります。たとえば、Internet Explorer で Alt+F キーを押すと [ファイル] メニューが開きます。Alt キー シーケンスを優先するか、またはブラウザで予約されているキーを優先するかは、ブラウザによって決まります。
Label コントロールを使用してアクセス キーを設定するには
アクセス キーによってフォーカスを置くコントロールのキャプションとして使用する Label コントロールをページに追加します。
Label コントロール内に、次のプロパティを設定します。
AccessKey このプロパティは、Alt キーと共に使用する文字または数字に設定します。たとえば、Alt+S をサポートする場合は S に設定します。
AssociatedControlID このプロパティは、Alt キー シーケンスを押したときにフォーカスを設定するコントロールの ID に設定します。
Label コントロールと TextBox コントロールのマークアップのコード例を次に示します。Label コントロールは TextBox コントロールのキャプションを表示し、下線付きの L 文字はテキスト ボックスのアクセス キーが Alt+L であることを示します。
セキュリティに関するメモ : この例には、ユーザー入力を受け付けるテキスト ボックスがあるため、セキュリティ上の脅威になる可能性があります。既定では、ASP.NET Web ページは、ユーザー入力にスクリプトまたは HTML 要素が含まれていないことを検証します。詳細については、「スクリプトによる攻略の概要」を参照してください。
<asp:Label ID="Label1" runat="server" AccessKey="L" AssociatedControlID="TextBox1" Text="<u>L</u>ast name: "> </asp:Label> <asp:TextBox ID="TextBox1" runat="server"></asp:TextBox>
メモ : Label コントロールのアクセス キーを使用してフォーカスを設定するには、ブラウザでクライアント スクリプトが有効になっている必要があります。