7 Ekim 2013 Pazartesi

Asp.Net ile Form Üzerindeki Nesneleri Belli Bir Süre Sonra Gizleme

Kullanıcıya yapılan bir işlem sonrası hata veya bilgilendirme amaçlı olarak verdiğiniz mesajların belli bir süre sonra kaybolmasını sağlayabilirsiniz. Bunun için JQuery kullanarak gizlenecek olan nesnenin id’sini kullanacağız. İlk olarak form üzerine bire textbox bir buton ve label nesnesi ekleyelim



Daha sonra Gonder isimli Butonun Click olayına
protected void Gonder(object sender, EventArgs e)
{
    lblbilgi.Visible = true;
}
yazıyoruz butona tıklandıktan sonra gizlenme olayını sağlaması için form sayfamıza dönüp

yazıyoruz programı çalıştırdığımız zaman text kutusuna bilgileri yazıp gönder tuşuna basıyoruz ve sonuç olarak ekranda Bilgileriniz Kaydedildi…. mesajı çıkıyor ve 5 saniye sonra otomatik olarak kayboluyor..

5 Ekim 2013 Cumartesi

Grid control de ki tarihi alanını formatlama

asp:BoundField içine
DataFormatString="{0:d}"

Griddeki row ların numarasını grid columna basmak


  
    
      
        <%# Container.DataItemIndex + 1 %>
      
    
    
    
  

Reportviewer küsürat gösterimi

Eğer var ise küsürat gösterir yoksa, keser biçer.
=Format(Fields!UnitPrice.Value, "#.########")
ya da
=Format(Fields!UnitPrice.Value, "0.########")
yaparsak, .39 yerine 0.39 gibi gösterebilir de.

Masterpage Lifecycle (Yaşam Döngüsü)

Page PreInit
Control Init
Master Init
Page Init
Page Init Complete

Page PreLoad
Page Load
Master Load
Control Load
Page Load Complete

Page PreRender
Master PreRender
Control PreRender

Visual Studio ve SQL Server Kısayolları

VISUAL STUDIO KISAYOLLARI...
shift + alt + F10 - Otomatik Using ekliyor.....
CTRL + k + D - OTOMATİK OLARAK KOD LARI DÜZENE SOKUYOR...

SQL Server KISAYOLLARI...

DataList teki menu veya linklerin seçili olanlarına göre css ayarlama...

DataListin CssClass ına aşağıdaki linki yazıyoruz...
'<%# Eval("DepatmanID").ToString() == Request.QueryString["DepartmanID"] ? "DepartmanSelected" : "DepartmanUnSelected" %>'

JQuery MaskedInput kullanımı

script type="text/javascript" src="https://ajax.googleapis.com/ajax/libs/jquery/1.5.0/jquery.min.js"
script src="jquery.maskedinput-1.2.2.min.js" type="text/javascript"
script type="text/javascript">
    jQuery(function($) {
    $("#<%=date.ClientID %>").mask("99/99/9999");
    $("#<%=phone.ClientID %>").mask("(999) 999-9999");
    $("#ctl00_ContentPlaceHolder1_tin").mask("99-9999999");
    $("#ctl00_ContentPlaceHolder1_ssn").mask("999-99-9999");
 });    
 /script

asp:TextBox runat="server" ID="date"
asp:TextBox runat="server" ID="phone"
asp:TextBox runat="server" ID="tin"
asp:TextBox runat="server" ID="ssn"

GridView içindeki kayıtlar içinde for döngüsü ile toplu güncelleme işlemi

Öncelikle GridViewimizin içerisini verilerimiz ile dolduruyoruz.
GridView1.DataSource = DBIslem.DtGetir("SELECT ID,RESIM FROM TBL_FOTO_RESIM");
GridView1.DataBind();
Daha sonra gridview mizde bulunan satır sayısı kadar bir döngü oluşturuyoruz. Döngü içine girdikten sonra birinci hücrede bulunan metinin textini alıyoruz. sonra her satırda bulunan resimin verisini güncelliyoruz.
protected void Button2_Click(object sender, EventArgs e)
{
    try
    {
        for (int i = 0; i < GridView1.Rows.Count; i++)
        {
            string KELIME = GridView1.Rows[i].Cells[1].Text;
            DBIslem.DtGetir("UPDATE TBL_FOTO_RESIM SET RESIM = '" + KELIME.Replace("/userfiles/Image/Album/", "") + "' WHERE ID='" + GridView1.Rows[i].Cells[0].Text + "'");
             Label1.Text = "işlem tamamlandı...";
        }
    }
    catch (Exception ex)
    {
        Label1.Text = "hata: "+ex.Message;
    }
}

GridView içerisinde satırlar içinde dönerek işlem yapmak

protected void Button1_Click(object sender, EventArgs e)
{
    foreach(GridViewRow row in GridView1.Rows)
    {
         row.Cells[6].Text=(Convert.ToInt32(row.Cells[4].Text) + Convert.ToInt32(row.Cells[5].Text)).ToString();
    }
}

Css ve DIV ile Scrollbar yapımı

Web uygulamaları geliştirirken önemli konulardan biriside tasarımdır. Bazen sayfada çok fazla içerik olduğunda sayfa uzar gider. O zaman şöyle bir şey yapabiliriz. Çok fazla içerik olan kısmı bir Div Nesnesi içerisine alıp, Div nesnesinin yüksekliğini veya uzunluğunu veya hem yüksekliğini hem de uzunluğunu sabitledikten sonra, Scrollbar (Kaydırma çubuğu) ekleyip içeriğin Div nesnesinde içerisinde kaydırılarak görüntülenmesini sağlayabiliriz. Nasıl yapıcağız onu görelim.
Öncelikle sayfada CSS classı (nesnesi) oluşturuyoruz. Ve nesnenin özelliklerini belirtiyoruz.
style type="text/css">
      .icerik{
            font-family:Verdana;
            font-size:11px;
            SCROLLBAR-ARROW-COLOR:white; 
            SCROLLBAR-DARKSHADOW-COLOR: white; 
            SCROLLBAR-BASE-COLOR: #6699FF; 
            SCROLLBAR-HIGHLIGHT-COLOR:white; 
            SCROLLBAR-FACE-COLOR: #99CCFF; 
            SCROLLBAR-TRACK-COLOR: white;            
            SCROLLBAR-3DLIGHT-COLOR: #62B0FF; 
            SCROLLBAR-SHADOW-COLOR: #62B0FF; 
            height:150px; 
            width:500px;
            overflow:auto; 
            border:solid 1px #99CCFF;
            background-color:White;
            margin:5px; 
            padding:5px; 
      }/style
CSS özelliklerinin ne iş yaptığını anlatmaya gerek yok. Özelliklerinin değerlerini değiştirerek ne gibi değişiklikler olduğunu gözlemleyebilirsiniz. Şimdi bu Css içerik nesnesinin özelliklerini Div nesnesine uygulayalım.
div class="icerik">Buraya içerik gelecek/div

Popup pencereyi kapatınca, eski sayfayı refresh yapmak

1. YÖNTEM...
script type="text/javascript">
function close_this_window()
{
   $pageoffset = document.body.scrollTop;
   window.opener.location.reload();
   window.opener.document.body.scrollTop = $pageoffset;
   window.close();
}
/script
a href="#" onclick="close_this_window();">KAPAT
2. YÖNTEM...
protected void Button2_Click(object sender, EventArgs e)
    {
    ScriptManager.RegisterStartupScript(Page, typeof(string), Guid.NewGuid().ToString(), "window.close();window.opener.location.reload();", true);
    }

ASP.NET te Html tarafında for döngüsü kullanımı

Kod tarafımız...
public partial class _Default : System.Web.UI.Page
{
    public DataTable Veri { get; set; } 
    protected void Page_Load(object sender, EventArgs e)
    {
       DataTable dt = new DataTable();
       dt.Columns.Add("Deger1", typeof(string));
       dt.Rows.Add("Deger2");
       dt.Rows.Add("Deger3");
       this.Veri = dt;
    }
}
HTML tarafımız...
<% for (int i = 0; i < this.Veri.Rows.Count; i++) { %>
<%=this.Veri.Rows[i]["Deger1"].ToString()%>
<% }; %>

DropDownList'e gelen listenin en başına "Seçim yapınız..." seçeneği eklemek

DDList.Items.Insert(0, new ListItem("Seçim yapınız...", "0"));

ASP.NET nesnelerine mouseover olayını eklemek

ImageButton1.Attributes.Add("onmouseover", "this.src = 'Images/Image2.jpg'");
ImageButton1.Attributes.Add("onmouseout", "this.src = 'Images/Image1.jpg'");

DataList'in içerisindeki nesnelere ulaşma

foreach (Control k in DataList1.Controls)
{
    Label lbl = (Label)k.FindControl("LblToplamUcret");
    Session["ToplamUcret"]=lbl.Text.ToString()+" TL";
}

Decimal değerin para birimine çevrilmesi

decimal sayi = Convert.ToDecimal(TxtFiyat.Text);
TxtFiyat.Text = sayi.ToString("N");
Çıktısı : 1.250,00 TL olur.

Veriyi Session'dan tutma ve session daki veri okuma

protected void Page_Load(object sender, EventArgs e)
{
     SqlDataAdapter adp = new SqlDataAdapter("SELECT * FROM Tbl_Makina", Con);
     DataTable dt = new DataTable();
     adp.Fill(dt);
     Session.Add("dt", dt);
     adp.Dispose();
}

protected void BtnOku_Click(object sender, EventArgs e)
{
     DataTable dt = new DataTable();
     dt = (DataTable)Session["dt"];
     Response.Write(dt.Rows[0]["OrderID"].ToString());
     DataList1.DataSource = dt;
     DataList1.DataBind();
     dt.Dispose();
     dt.Clear();
     Session["dt"] = null;
}

Sitenin background unu sabitleme

body style="background-image:url('Rsm/bg.jpg'); background-attachment:fixed;}"

4 Ekim 2013 Cuma

Sayfa başına çıkma kodu

a href="javascript:scroll(0,0)">Sayfa Başına Çık/a

DataTable içinde dönerek, CheckBox ların değerlerini alma

protected void ImageButton1_Click(object sender, ImageClickEventArgs e)
{
    string deger = "";
    for (int i = 0; i < dlEksikler.Items.Count; i++)
    {
        CheckBox cbID = (CheckBox)dlEksikler.Items[i].FindControl("CheckBox1");                    
        if (cbID.Checked == true)
        {
            deger += cbID.ToolTip.ToString() + ", ";
        }
    }
    Label1.Text = deger.ToString();
}

DataTable içinde dönerek, her kayıttan sonra "," koyma

DataTable dt = epostalistesi.epostalistesi_aktifler();
string[] items = new string[dt.Rows.Count];
int i = 0;
string deger = "";
foreach (DataRow dr in dt.Rows)
{
    items.SetValue(dr["eposta"].ToString(), i);
    i++;
    string str = dr["eposta"].ToString();
    deger += str + ",";
}
txtKime.Text = deger.ToString();

DataList in ItemDataBound Olayı

İç içe DataList kullanımı aşağıda olduğu gibi ana DataList in ItemDataBound kısmında o satırın ID sini yakalayarak, yapılıyor.
protected void DataList1_ItemDataBound(object sender, DataListItemEventArgs e)
{
   if (e.Item.ItemIndex != -1)
   {
       int ID = Convert.ToInt32(DataBinder.Eval(e.Item.DataItem, "id"));

       (e.Item.FindControl("DL2") as DataList).DataSource = Islem.YorumSayisi(ID);
       (e.Item.FindControl("DL2") as DataList).DataBind();
   }
}

Kod tarafında popup açtırma


Blogger 'da Html, Css, Php vs.. Kod ekleme ve Çerçeve içine Alma

Geçenlerde epey uğraşmıştım ama yapamamıştım, html kodlarını kabul etmiyor blogger kafası karışıyor bunun için hizmet veren formatmysourcecode sitesi yardımımıza koşuyor...

Siteye girip üstte yer alan kutucuğa kodlarımızı vs.. yazıyoruz ve aşağıda yer alan Format Text Tuşuna basalım

Örnek:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
 <head>
 <title>Mause Overlay Menü</title>
 <link href="stylesheet.css" rel="stylesheet" type="text/css" />
 </head>
 <body>


Bu bir deneme koddur.


</body>
</html>

Gridview içerisindeki nesnelere erişmek…

string id = grid.DataKeys[e.RowIndex].Value.ToString();
string name = ((TextBox)grid.Rows[e.RowIndex].Cells[0].Controls[0]).Text;
string description = ((TextBox)grid.Rows[e.RoxIndex].FindControl(“txtDescription”).Text;

DataList, Repeater veya GridView içerisinde HyperLink gösterirken HyperLink in Text Özelliği


Text = '<%# HttpUtility.HtmlEncode(EVAL("Name").ToString())'

Şeklinde göstermeliyiz. Bu şekilde gösterim sitemize html kodları konmasını engelleyerek bir nevi güvenlik sağlıyor..