OVH Cloud OVH Cloud

Validation par defaut

4 réponses
Avatar
Philippe
est-il possible de déclarer des imagebutoon par defaut pour la validation
d'une page ascx avec la touche ENTER ou ESC

4 réponses

Avatar
Antoine Griffard
Englobe le formulaire qui contient ton bouton par un asp:panel.
Affecte ensuite la propriété 'DefaultButton' avec l'id de ton bouton.
Cela fonctionne avec tout type de bouton puisqu'on doit passer l'id d'un
contrôle qui implémente l'interface IButton.

<asp:Panel ID="pnl" runat="server" DefaultButton="imgBtnDefault">
...
<asp:ImageButton id="imgBtnDefault" runat="server" ... />
</asp:Panel>

Le form de la page à la même propriété mais comme tu es dans un contrôle
ascx, il faut utiliser cette astuce du panel.

est-il possible de déclarer des imagebutoon par defaut pour la
validation d'une page ascx avec la touche ENTER ou ESC



Avatar
Philippe
Merci pour l'astuce mais il faut que le panel ai le focus
mais dans mon controle il y a un textbox et j'aimerais que lorsque j'appui
sur la touche enter lorsque que ce textbox à le focus que la validation se
fasse par le controle imagebutton

"Antoine Griffard" a écrit :

Englobe le formulaire qui contient ton bouton par un asp:panel.
Affecte ensuite la propriété 'DefaultButton' avec l'id de ton bouton.
Cela fonctionne avec tout type de bouton puisqu'on doit passer l'id d'un
contrôle qui implémente l'interface IButton.

<asp:Panel ID="pnl" runat="server" DefaultButton="imgBtnDefault">
...
<asp:ImageButton id="imgBtnDefault" runat="server" ... />
</asp:Panel>

Le form de la page à la même propriété mais comme tu es dans un contrôle
ascx, il faut utiliser cette astuce du panel.

> est-il possible de déclarer des imagebutoon par defaut pour la
> validation d'une page ascx avec la touche ENTER ou ESC
>





Avatar
Philippe
Elle se trouve dans une table qui elle même se trouve dans le panel
j'utilise la version visual studio 2003

voici le code de l'ascx

------------------------------------------------------------------------------------------
<%@ Control Language="vb" AutoEventWireup="false"
Codebehind="UserControl_Recherche_Agent.ascx.vb"
Inherits="Bagdad.UserControl_Recherche_Agent"
TargetSchema="http://schemas.microsoft.com/intellisense/ie5" %>
<asp:panel id="PanelRecherche" tabIndex="21" Width="441px"
BorderStyle="Ridge" runat="server"
Height="200px" Wrap="False" DefaultButton="Bt_Annuler">
<TABLE id="Table1" cellSpacing="0" cellPadding="0" width="100%" border="0">
<TR>
<TD noWrap width="5"></TD>
<TD style="WIDTH: 237px" vAlign="bottom" noWrap>
<asp:Label id="Label2" tabIndex="20" Height="16px" runat="server"
Width="168px" Font-Names="Tahoma"
Font-Size="7pt" BackColor="Transparent">Recherche par nom ou par code
alliance</asp:Label></TD>
<TD style="WIDTH: 529px; HEIGHT: 43px" rowSpan="2">
<asp:ImageButton id="Bt_Recherche" tabIndex="1" runat="server"
ImageUrl="../Images/detail.gif"></asp:ImageButton></TD>
<TD style="HEIGHT: 43px" noWrap align="right" rowSpan="2">
<asp:ImageButton id="Bt_Annuler" tabIndex="2" runat="server"
ImageUrl="../Images/Annuler.gif"></asp:ImageButton></TD>
<TD noWrap width="5"></TD>
</TR>
<TR>
<TD style="HEIGHT: 24px" noWrap width="5"></TD>
<TD style="WIDTH: 237px; HEIGHT: 24px">
<asp:TextBox id="TB_CodeFT" runat="server" ></asp:TextBox></TD>
<TD style="HEIGHT: 24px" noWrap></TD>
</TR>
<TR>
<TD noWrap width="5" height="4"></TD>
<TD noWrap colSpan="3" height="4"></TD>
<TD noWrap width="5" height="4"></TD>
</TR>
<TR>
<TD noWrap width="5"></TD>
<TD noWrap align="center" colSpan="3">
<asp:datagrid id="DataGridRecherche" tabIndex="3" runat="server"
BorderStyle="None" Width="414px"
BackColor="White" PageSize="20" AllowPaging="True" CellPadding="3"
DataMember="Agents" DataKeyField="IdentifiantRH"
AutoGenerateColumns="False" HorizontalAlign="Center" BorderWidth="1px"
BorderColor="#804000">
<SelectedItemStyle Font-Bold="True" ForeColor="White"
BackColor="#669999"></SelectedItemStyle>
<ItemStyle Font-Size="8pt" Font-Names="Tahoma"
ForeColor="#000066"></ItemStyle>
<HeaderStyle Font-Size="8pt" Font-Names="Tahoma" Font-Bold="True"
ForeColor="White" BackColor="#D4A953"></HeaderStyle>
<FooterStyle ForeColor="#000066" BackColor="White"></FooterStyle>
<Columns>
<asp:TemplateColumn HeaderText="Agent">
<ItemStyle Wrap="False"></ItemStyle>
<ItemTemplate>
<asp:LinkButton id=LinkButton1 runat="server" Text='<%#
DataBinder.Eval(Container, "DataItem.Civilite") & " " &
DataBinder.Eval(Container, "DataItem.Nom") & " " & DataBinder.Eval(Container,
"DataItem.Prenom") %>' CommandName="EDIT" CommandArgument='<%#
DataBinder.Eval(Container, "DataItem.IdentifiantRH") %>'>
</asp:LinkButton>
</ItemTemplate>
<EditItemTemplate>
<asp:TextBox id=TextBox1 runat="server" Text='<%#
DataBinder.Eval(Container, "DataItem.Agent") %>'>
</asp:TextBox>
</EditItemTemplate>
</asp:TemplateColumn>
<asp:TemplateColumn HeaderText="Affectation">
<ItemStyle Wrap="False"></ItemStyle>
<ItemTemplate>
<asp:Label id=Label3 runat="server" Text='<%#
AfficheService(DataBinder.Eval(Container, "DataItem.AffectationPrincipale"))
%>'>
</asp:Label>
</ItemTemplate>
</asp:TemplateColumn>
</Columns>
<PagerStyle Font-Size="7pt" Font-Names="Tahoma" Font-Bold="True"
HorizontalAlign="Center" ForeColor="#0033CC"
BackColor="BurlyWood" Wrap="False" Mode="NumericPages"></PagerStyle>
</asp:datagrid></TD>
<TD noWrap width="5"></TD>
</TR>
</TABLE>
</asp:panel>
--------------------------------------------------------------------------------------
ainsi que le code de la page contenant le controle user

----------------------------------------------------------------------------------------
<%@ Register TagPrefix="uc1" TagName="UserControl_Recherche_Agent"
Src="Recherche_Agent/UserControl_Recherche_Agent.ascx" %>
<%@ Page Language="vb" AutoEventWireup="false"
Codebehind="Connection.aspx.vb" Inherits="Bagdad.Connection" %>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML>
<HEAD>
<title>Connection</title>
<meta content="Microsoft Visual Studio .NET 7.1" name="GENERATOR">
<meta content="Visual Basic .NET 7.1" name="CODE_LANGUAGE">
<meta content="JavaScript" name="vs_defaultClientScript">
<meta content="http://schemas.microsoft.com/intellisense/ie5"
name="vs_targetSchema">

</HEAD>
<body MS_POSITIONING="GridLayout">
<form id="Form1" method="post" runat="server" >
<INPUT id="MESSERR" style="Z-INDEX: 101; LEFT: 96px; POSITION: absolute;
TOP: 16px" type="hidden"
size="14" name="MESSERR" runat="server"> <A
href="/BAGDAD/Principale.aspx"><IMG name="Retour" style="BORDER-TOP-STYLE:
none; BORDER-RIGHT-STYLE: none; BORDER-LEFT-STYLE: none; BORDER-BOTTOM-STYLE:
none"
alt="" src="Images/petitlogo.gif"></A>
<BR>
<uc1:UserControl_Recherche_Agent id="Recherche_Agent"
runat="server"></uc1:UserControl_Recherche_Agent></form>
<script language="javascript">
if (document.Form1.MESSERR.value != ""){
alert(document.Form1.MESSERR.value)
}


</script>
</body>
</HTML>
---------------------------------------------------------------------------------------------
"Antoine Griffard" a écrit :

Il faut mettre ta TextBox dans le panel bien sûr et cela devrait fonctionner.

Autre astuce :
Si tu veux que ta textbox ait le focus, tu peux utiliser la méthode SetFocus
afn de positionner le focus sur le contrôle serveur que tu veux :
Page.SetFocus("TextBoxId")


> Merci pour l'astuce mais il faut que le panel ai le focus
> mais dans mon controle il y a un textbox et j'aimerais que lorsque
> j'appui
> sur la touche enter lorsque que ce textbox à le focus que la
> validation se
> fasse par le controle imagebutton
> "Antoine Griffard" a écrit :
>
>> Englobe le formulaire qui contient ton bouton par un asp:panel.
>> Affecte ensuite la propriété 'DefaultButton' avec l'id de ton bouton.
>> Cela fonctionne avec tout type de bouton puisqu'on doit passer l'id
>> d'un
>> contrôle qui implémente l'interface IButton.
>> <asp:Panel ID="pnl" runat="server" DefaultButton="imgBtnDefault">
>> ...
>> <asp:ImageButton id="imgBtnDefault" runat="server" ... />
>> </asp:Panel>
>> Le form de la page à la même propriété mais comme tu es dans un
>> contrôle ascx, il faut utiliser cette astuce du panel.
>>
>>> est-il possible de déclarer des imagebutoon par defaut pour la
>>> validation d'une page ascx avec la touche ENTER ou ESC
>>>





Avatar
Philippe
pour l'astuce du focus la commande Page.setfocus dans le code behind n'est
pas acceptée, me suis je tromper ou celle-ci doit se trouver dans le code
HTML?



"Antoine Griffard" a écrit :

Il faut mettre ta TextBox dans le panel bien sûr et cela devrait fonctionner.

Autre astuce :
Si tu veux que ta textbox ait le focus, tu peux utiliser la méthode SetFocus
afn de positionner le focus sur le contrôle serveur que tu veux :
Page.SetFocus("TextBoxId")


> Merci pour l'astuce mais il faut que le panel ai le focus
> mais dans mon controle il y a un textbox et j'aimerais que lorsque
> j'appui
> sur la touche enter lorsque que ce textbox à le focus que la
> validation se
> fasse par le controle imagebutton
> "Antoine Griffard" a écrit :
>
>> Englobe le formulaire qui contient ton bouton par un asp:panel.
>> Affecte ensuite la propriété 'DefaultButton' avec l'id de ton bouton.
>> Cela fonctionne avec tout type de bouton puisqu'on doit passer l'id
>> d'un
>> contrôle qui implémente l'interface IButton.
>> <asp:Panel ID="pnl" runat="server" DefaultButton="imgBtnDefault">
>> ...
>> <asp:ImageButton id="imgBtnDefault" runat="server" ... />
>> </asp:Panel>
>> Le form de la page à la même propriété mais comme tu es dans un
>> contrôle ascx, il faut utiliser cette astuce du panel.
>>
>>> est-il possible de déclarer des imagebutoon par defaut pour la
>>> validation d'une page ascx avec la touche ENTER ou ESC
>>>