VB.NET – Recherche d’un contrôle dans une page ou un autre contrôle en récursif

‘ Recherche un controle dans une page
Public Function RechercheControleRecursif(ByVal p_control As Control, ByVal id As String) As Control
If p_control.ID = id Then
Return p_control
End If

For Each c As Control In p_control.Controls
Dim t As Control = RechercheControleRecursif(c, id)

If t IsNot Nothing Then
Return t
End If
Next

Return Nothing
End Function

Publicités

ASP.NET – DataList / Repeater imbriqué

Pour gérer la source de données d’un datalist ou repeater se trouvant dans un autre datalist ou repeater :

<asp:DataList ID= »dlQuestions » runat= »server » OnItemDataBound= »DlQuestions_ItemDataBound » Style= »width: 100%; »>
<ItemTemplate>
<table style= »border: 1px solid black; width: 100%; column-span: none; »>
<tr>
<td style= »width: 70%; »>
<%# DataBinder.Eval(Container.DataItem, « Id ») %>
<%# DataBinder.Eval(Container.DataItem, « question ») %>
</td>
<td>
<asp:DataList ID= »dlReponses » runat= »server » OnItemDataBound= »DlQuestions_ItemDataBound » Style= »width: 100%; »>
<ItemTemplate>
<%# DataBinder.Eval(Container.DataItem, « reponeses ») %>
</ItemTemplate>
</asp:DataList>
</td>
</tr>
</table>
</ItemTemplate>
</asp:DataList>

 

Code behind : 

Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load

DlQuestions.DataSource = Questions
DlQuestions.DataBind()

End Sub

Protected Sub DlQuestions_ItemDataBound(sender As Object, e As DataListItemEventArgs)
If e.Item.ItemType = ListItemType.Item OrElse e.Item.ItemType = ListItemType.AlternatingItem Then
Dim question_id As Integer = CType(e.Item.DataItem, ClasseQuestions).Id ‘

Dim DlReponses As DataList = CType(e.Item.FindControl(« DlReponses »), DataList) ‘ Recherche Du datalist pour remplir les réponses
DlReponses.DataSource = New ClsEnquete_Int_Reponse().Charger_reponses_par_question_id(question_id)
DlReponses.DataBind()

End Sub

 

VB.NET – Assigner une chaine de caractère / string à une enumération

Private p_type_reponse As type_reponses

Public Property Type_Reponse As type_reponses
Get
Return p_type_reponse
End Get
Set(value As type_reponses)
p_type_reponse = value
End Set
End Property

Public Enum type_reponses
CHECKBOX
RADIOBUTTON
TEXTE
End Enum

Assigner à type_reponse qui est de type enum une chaine string :

Type_Reponse = DirectCast([Enum].Parse(GetType(type_reponses), dt.Rows(0)(« eir_type »).ToString), type_reponses)

SQL – Procédures Stockées – Début

— Boucle While
— déclaration des variables
declare @i int = 0, @nb_reponse int
declare @genre varchar(200), @espece varchar(200)
declare @Tbl_reponses table(genre varchar(200), espece varchar(200))
— Requête du max de réponses
select @nb_reponse=count(SAI_VALEUR) + 1 from SAISIES

while @i <= @nb_reponse
begin
select @genre = ‘genre’ + cast( @i as varchar)
select @espece = ‘espece’ + cast( @i as varchar)
— insertion dans un tableau
insert into @Tbl_reponses (genre,espece ) values (@genre, @espece)
— incrémentation de la variable i
select @i = @i + 1
end
— Lecture des données
select * from @Tbl_reponses

Contains dans une procédure stockée, savoir la chaine de caractère contient un caractère spécial :

IF  CHARINDEX('#', 'recherche#recherche') > 0

 

 

JQuery – Déplacer une div avec les flèches

<script>

        $(document).ready(function () {
    $(function () {
                $(‘html’).keydown(function (e) {
                    //    $(‘#keydown_con’).val(e.which);
                    // gauche
                    if (e.which == « 37 ») {
                        $(‘#divBouger’).animate({ ‘marginLeft’: « -=10px » });
                    }
                    //droite
                    if (e.which == « 39 ») {
                        $(‘#divBouger’).animate({ ‘marginLeft’: « +=10px » });
                    }
                    // haut
                    if (e.which == « 38 »)
                    $(‘#divBouger’).animate({ ‘marginTop’: « -=10px » });
                    //bas
                    if (e.which == « 40 »)
                    $(‘#divBouger’).animate({ ‘marginTop’: « +=10px » });
                });
            });
   

       

    </div>

JQuery – Débuter

Trouver un élément par Id : 
var tb = $(« #tb1 »);
Textbox  – Récupérer la valeur puis lui assigner une autre valeur : 
var tb = $(« #tb1 »);
tb.val(); // récupérer la valeur.
tb.val(« toto »); // assigner une nouvelle valeur
checkBox- Récupérer la valeur puis lui assigner une autre valeur : 
 var cb1 = $(« #cb1 »);
 cb1.is(« checked »);  // récupérer la valeur.
 cb1.prop(« checked »,true); // assigner une nouvelle valeur
<html>
<head>
        $(document).ready(function () {
            var tb = $(« #tb1 »);
            //alert(tb.val());
            tb.val(« ah »);
            var cb1 = $(« #cb1 »);
            alert(cb1.is(« checked »));
            cb1.prop(« checked »,true);
        });
</head>
<body>
    coucou
    <input id=tb1 type= »text » value= »oh »>
    <input id= »cb1″ type= »checkbox » value= »1″>
</body>
</html>
Un peu tout le temps de faire du tri par rapport à la doc officiel : 
<html>
<head>
   
        $(document).ready(function () {
            var tb = $(« #tb1 »);
            //alert(tb.val());
            tb.val(« ah »);
            var cb1 = $(« #cb1 »);
            //  alert(cb1.is(« checked »));
            cb1.prop(« checked », true);
            var div1 = $(« #div1 »);
            div1.height(100);
            div1.width(100);
            div1.css(‘border’, ‘3px solid black’);
            // div1.hide(500);
            // div1.show(400);
            // div1.fadein(10);
            // div1.fadeOut(10);
            //div1.toggle(500); // disparition de la div
            div1.hide(500).delay(1500).show(300).queue(function(){   $( « #title » ).html( « yeah fini » ); $( this ).dequeue();});
            $(« #funtimes »).animate(
                {
                    left: « +=50 »,
                    opacity: 0.25
                });
     $(« #box »).animate( { height: 200 }, « slow »).queue( function() {
        $( « #title » ).html( « We’re in the animation, baby! » );
        $( this ).dequeue();
    } );
        });
   
</head>
<body>
    coucou
    

    <input id=tb1 type= »text » value= »oh »>
    <input id= »cb1″ type= »checkbox » value= »1″>
   

   

   

</body>
</html>

TypeScript – Débuter

https://www.typescriptlang.org/play/index.html

 

class Personne{
Nom: string;
Age: number;

constructor(public p_nom: string, public p_age: number)
{
this.Nom = p_nom;
this.Age = p_age
}
}

function retournePersonneIdentification(personne: Personne) {
return « coucou,  » + personne.Nom +  » age : » + personne.Age;
}

let utilisateur = new Personne(« guigui »,34);

document.body.innerHTML = retournePersonneIdentification(utilisateur);

ASP.NET / Ajax – Appel asynchrone depuis javascript

Pré-requis : 

Mettre <scriptmanager> avec EnablePageMethods = true

Javascript : 

function appel() {
var retour = PageMethods.LigneEnableDisable(‘valeur1’,OnSuccess, OnFailure);
};

function OnSuccess(result) {
if(result)
{
alert(« c’est  » + result);
}
}
function OnFailure(error) {

}

Code behind : 

<System.Web.Services.WebMethod>
Public Shared Function LigneEnableDisable(ByVal fieldVal1 As String) As String
Return « ok »
End Function