01/01/2019 |
Admin |
Xamarin
Il existe des API du Framework .NET qui n'existent pas dans les API .NET des Windows Store Apps.
Par exemple Sytem.IO, dans l'API .Net pour les Windows Apps ne contient pas System.IO.IsolatedStorage mais Windows.Storage.
Cette API fournit un comportement similaire mais son utiliastion est très différente.
Après le développement de plusieurs applications Windows Store, j'ai remarqué que le développement d'une classe FileHelper serait utile.
En effet, des méthodes comme FileExists() ou FolderExists() ne sont pas proposés par Windows.Storage alors que leur utilisation est quasiment inévitable.
J'ai donc décidé de mettre ce code sur GitHub pour qu'il puisse être réutilisé et amélioré. Le code source ainsi que le sample d'une Universal Apps sont disponibles.
Voici la liste des fonctions majeures proposées :
FileHelper :
FileExistsAsync()
FolderExistsAsync()
GetFileStreamAsync()
GetContentFromFileAsync()
GetFileBytesAsync()
WriteToFileAsync()
ConvertStorageFileToBase64StringAsync()
EnumerateFilesAsync()
GetSubFoldersAsync()
DeserialiseXml<T>()
ZipHelper :
ZipFileAsync()
UnZipFileAsync()
Vous pouvez retrouver ce projet sur GitHub et le package nuget correspondant : Ph.WinRtFileHelper
Lire >>
01/01/2019 |
Admin |
C#
A placer après le DataBind() de la GridView
// Transformation du format de la date
for (int i = 0; i < gvLigne.Rows.Count; i++)
{
Label lblGvDate = gvLigne.Rows[i].FindControl("lblGvDate") as Label;
DateTime theDate = Convert.ToDateTime(lblGvDate.Text);
lblGvDate.Text = theDate.Day.ToString() + " " + this.GetMonthString(theDate.Month) + " " + theDate.Year.ToString();
}
///<summary>
/// Retourne la valeur du mois sous forme de chaine de caractere
///</summary>
///<param name="monthValue">Le numéro du mois</param>
///<returns>Le mois sous format chaine de caractère</returns>
public string GetMonthString(int monthValue)
{
switch (monthValue)
{
case 1:
return Resources.XX.Common_Janvier;
case 2:
return Resources.XX.Common_Fevrier;
case 3:
return Resources.XX.Common_Mars;
case 4:
return Resources.XX.Common_Avril;
case 5:
return Resources.XX.Common_Mai;
case 6:
return Resources.XX.Common_Juin;
case 7:
return Resources.XX.Common_Juillet;
case 8:
return Resources.XX.Common_Aout;
case 9:
return Resources.XX.Common_Septembre;
case 10:
return Resources.XX.Common_Octobre;
case 11:
return Resources.XX.Common_Novembre;
case 12:
return Resources.XX.Common_Decembre;
default:
return "erreur";
}
Lire >>
01/01/2019 |
Admin |
C#
Dans le popup (.ascx.cs)
- Définition de l'évènement :(A placer entre les "using" et le nom de la classe)
public delegate void MyEventFormationHandler();
- Déclaration de l'évènement :
public event MyEventTotoHandler MyEventToto;
- Déclencher l'évènement :
if (MyEventToto != null)
{
MyEventToto();
}
Dans la page (aspx.cs)
- Dans la méthode OnLoad :
LePopup.MyEventToto += new MyEventTotoHandler(popupToto_MyEventToto);
- Ajouter la méthode déclenchée lors de l'évènement :
void popupFormationAssociee_MyEventFormation()
{
…………………
…………………
}
Lire >>
01/01/2019 |
Admin |
C#
Redimensionner une image qui gardera ses proportions avec une hauteur de 100px :
private void redim(string path, string imgName, string pathToSave)
{
Bitmap origine = new Bitmap(path);
int x = origine.Size.Width ;
int y = origine.Size.Height;
int nY = 100;
int nX = (x * nY) / y;
Bitmap aRedim = new Bitmap(origine, new Size(nX,nY));
aRedim.Save(pathToSave + imgName);
}
Lire >>
01/01/2019 |
Admin |
C#
Créer un cookie
HttpCookie cookie = new HttpCookie("UserSettings");
cookie["Color"] = "Red";
cookie.Expires = DateTime.Now.AddDays(2);
Response.Cookies.Add(cookie);
Ou
Request.Cookies["Colors"]["TextColor"] = "Red";
Lire un cookie
if (Request.Cookies["Colors"][" TextColor"] != null)
{
string color = Request.Cookies["Colors"]["TextColor"];
}
Créer une variable de session
Session["color"] = Color.Red;
Lire une variable de session
string sess = Session["color"].ToString();
Récupérer une QueryString depuis l'URL du navigateur
Request.QueryString["name"].ToString();
Lire >>
01/01/2019 |
Admin |
C#
protected void populateDdlAlbum()
{
DataSet ds = new DataSet();
ds.ReadXml(FichierXml);
ddlAlbum.DataSource = ds.Tables["RootAlbum"];
ddlAlbum.DataTextField = ds.Tables["RootAlbum"].Columns["name"].ToString();
ddlAlbum.DataValueField = ds.Tables["RootAlbum"].Columns["id"].ToString();
ddlAlbum.DataBind();
}
Lire >>
01/01/2019 |
Admin |
Javascript
Code Javascript
<script language="javascript" type="text/javascript">
function displayProgress()
{
var hdn = document.getElementById('<%=hdnStatus.ClientID%>');
var div = document.getElementById('<%=pnlBackGround.ClientID %>');
if (div !=null)
{
var feedback = document.getElementById('<%=divFeedback.ClientID%>');
if (hdn.value!=1)
{
feedback.innerHTML = "<img src='../Images/ajax-loader.gif'>Please wait...<br />";
div.style.display = "block";
setTimeout("displayProgress()", 1000);
return true;
}
else
{
div.style.display = "none";
return true;
}
}
else
{
return true;
}
}
</script>
Style Css
.popup-div-background
{
position:absolute;
top: 0;
left: 0;
background-color:#ccc;
filter:alpha(opacity=90);
opacity:0.9;
height: 100%;
width: 100%;
min-height: 100%;
min-width: 100%
}
.popup-div-front
{
background-color: #ffffff;
color: black;
width: 70%;
text-align: left;
vertical-align: middle;
position: absolute;
top: 5%;
left: 15%;
bottom:5%;
font-weight:bold;
padding: 10px 5px 5px
...
Lire >>
01/01/2019 |
Admin |
Sql Server
protected void makeMenu()
{
DataSet ds = GetDataSetForMenu();
foreach (DataRow parentItem in ds.Tables["Categories"].Rows)
{
MenuItem categoryItem = new MenuItem((string)parentItem["CategoryName"]);
menuAsp.Items.Add(categoryItem);
foreach (DataRow childItem in parentItem.GetChildRows("Children"))
{
MenuItem childrenItem = new MenuItem((string)childItem["ProductName"]);
categoryItem.ChildItems.Add(childrenItem);
}
}
}
private DataSet GetDataSetForMenu()
{
string connec = La ConnectionString;
SqlConnection myConnection = new SqlConnection(connec);
SqlDataAdapter adCat = new SqlDataAdapter("SELECT * FROM Categories", myConnection);
SqlDataAdapter adProd = new SqlDataAdapter("SELECT * FROM Products", myConnection);
DataSet ds = new DataSet();
adCat.Fill(ds, "Categories");
adProd.Fill(ds, "Products");
ds.Relations.Add("Children", ds.Tables["Categories"].Columns["CategoryID"], ds.Tables["Products"].Columns["CategoryID"]);
return ds;
}
Lire >>