Catégorie : .NET

ASP.NET – Executer un traitement à la fermeture de la fenêtre du navigateur en Ajax et asp.net

 

Script Ajax qui va appler notre page contenant la méthode « MAJ » : 

function sauvegarde() {

var temps = document.getElementById(« lbCompteur »).innerText;
$.ajax(
{
url: « /fermeture_chrono.aspx/MAJ »,
contentType: « application/json; charset=utf-8 »,
dataType: « json »,
type: « POST »,
data: ‘{p_temps: « ‘ + temps + ‘ » }’
}
);
}

Appel de la fonction à la fermeture de la fenêtre : 

<body onbeforeunload= »sauvegarde(); »>

Notre page code-behind qui va faire notre traitement : 

[System.Web.Services.WebMethod]
public static void MAJ(string p_temps)
{

}

 

Publicités

ASP.NET – Accéder à un contrôle dans la master page

Création du contrôle :

Site1.Master : 

Site1.Master.vb :

private Label lbCompteur = new Label() ;

public Label LbCompteur { get => lbCompteur; set => lbCompteur = value; }

protected void Page_Load(object sender, EventArgs e)
{
divCompteur.Controls.Add(lbCompteur);

}

Page où doit-être appelé le contrôle : 

Ajouter la balise suivante dans la page asp :

<%@ MasterType VirtualPath= »~/Site1.Master » %>

Code behind :

protected void Page_Load(object sender, EventArgs e)
{

this.Master.LbCompteur.Text = « test »;

}

 

 

Aspose – Divers

Fusion / ajouter des documents à un document avec aspose et supprimer les page blanche / première page.

Dim docFinal As New Document()
Dim docTmp As New Document(Server.MapPath(« ./modele/ » & modelename))

‘ ajoute le DataSet pour la fusion

docTmp .MailMerge.ExecuteWithRegions(ds)

‘ Ajout le doc au document final
docFinal.AppendDocument(docTmp , ImportFormatMode.KeepSourceFormatting)

‘ supprime les pages blanche
For Each n As Node In infomedFinal.ChildNodes
If n.ToTxt() = vbCrLf.ToString Then
docFinal.RemoveChild(n)
End If
Next

VB.NET – Générer / Créer DataTable depuis un DataGridView avec les champs visibles + leurs ordres

 »’ <summary>
 »’ Retourne un DataTable rempli avec les colonnes visible d’un datagridview.
 »’ </summary>
 »’ <param name= »dgv »>DataGriView source</param>
 »’ <returns></returns>
Public Function genererDataTableDepuisDataGridView(dgv As DataGridView) As DataTable
Dim dt = New DataTable()
Dim a As Integer = 0
‘ Crée les colonnes du DataTable à retourner avec les colonnes visibles du DataGridView.
For a = 0 To dgv.ColumnCount Step 1
For Each col As DataGridViewColumn In dgv.Columns
If a = col.DisplayIndex Then
If col.Visible = True Then
dt.Columns.Add(col.Name)
End If
End If
Next
Next
‘ crée un object d’un longueur égale au dataTable que l’on viens de créer.
Dim Values As Object() = New Object(dt.Columns.Count – 1) {}
‘ pour chaque ligne du dataGridView et pour chaque colonne on rempli la valeur.
For Each row As DataGridViewRow In dgv.Rows
Dim i As Integer = 0
For Each dc As DataColumn In dt.Columns
If dgv.Columns(row.Cells(dc.ColumnName).ColumnIndex).Visible = True Then
Values(i) = row.Cells(dgv.Columns(dc.ColumnName).Index).Value
i += 1
End If
Next
dt.Rows.Add(Values)
Next
Return dt
End Function

VB.NET – Replacer les caractères spéciaux d’une chaine string

Dim chaine As String = « /-?:(),+àsdsdqd  áâãäåfdsg  dfgÀÁÂdfgà ÄÅéèêëËÊÉdfgAZAZAZFGGÈòóôõöÒÓÔÕÖùúûüÙÚÛÜìíîïÌÍÎÏÿýÝçÇ »
Dim chaine_final As String = «  »
Dim non_autorise As Char() = « /-?:(),+àáâãäåÀÁÂÃÄÅéèêëËÊÉÈòóôõöÒÓÔÕÖùúûüÙÚÛÜìíîïÌÍÎÏÿýÝçÇ ».ToCharArray()
Dim autorise As Char() = « /-?:(),+aaaaaaAAAAAAeeeeEEEEoooooOOOOOuuuuUUUUiiiiIIIIyyYcC ».ToCharArray()

Dim i As Integer = 0
For Each s As String In chaine
For Each a As String In autorise
If i = non_autorise.Length Then
Exit For
End If
If s = non_autorise(i) Then
chaine = chaine.ToString.Replace(non_autorise(i), a)
End If
i += 1
Next
i = 0
Next

 

 

En faire une fonction :

Public Function remplacementCaractereSpeciaux(pChaineAModifier As String, pCaractereAutorise As String, pCaractereNonAutorise As String)

Dim chaine As String = pChaineAModifier
Dim non_autorise As Char() = pCaractereNonAutorise.ToCharArray()
Dim autorise As Char() = pCaractereAutorise.ToCharArray()

Dim i As Integer = 0
For Each s As String In chaine
For Each a As String In autorise
If i = non_autorise.Length Then
Exit For
End If
If s = non_autorise(i) Then
chaine = chaine.ToString.Replace(non_autorise(i), a)
End If
i += 1
Next
i = 0
Next

Return chaine

End Function