• 24-09-2014, 18:25:44
    #1
    merhaba arkadaşlar

    gridviewer de karakter sınırlandıracağım ama bir türlü yapamadım.

    TableCell cell = new TableCell();
            string s = HttpUtility.HtmlDecode(cell.Text);
            if (cell.Text.Length > 25)
                cell.Text = s.Substring(0, 25) + "....";
            cell.ToolTip = s;
    en basitinden bu kodu denedim yine olmadı hatta yetmedi;

    protected void Page_Load(object sender, EventArgs e)
            {
                if (!IsPostBack)
                    griddoldur();
             }
     
            public void griddoldur()
            {
                SqlConnection baglanti = klas.baglan();
                DataSet dts = new DataSet();
                SqlCommand cmd = new SqlCommand("Select * from mesaj", baglanti);
                SqlDataAdapter da = new SqlDataAdapter(cmd);
                da.Fill(dts);
                GridView1.DataSource = dts;
                GridView1.DataBind();
                       }
            protected void karaktersinirla(object sender, GridViewRowEventArgs e)
            {
                int i = 0;
                
                if (e.Row.RowType == DataControlRowType.DataRow)
                {
                    foreach (TableCell cell in e.Row.Cells)
                    {
                        i++;
                        string s = HttpUtility.HtmlDecode(cell.Text);
                        if (cell.Text.Length > 25 )
                            cell.Text = s.Substring(0, 25) + "....";
                        cell.ToolTip = s;
                    }
                }
            }
    bunu yaptım bu seferde böyle bir hata aldım;

    'GridView' içinde hem DataSource hem de DataSourceID tanımlandı. Tanımlardan birini kaldırın.

    lütfen yardım edin arkadaşlar yardımlarınızı bekliyorum.
  • 24-09-2014, 23:28:57
    #2
    Kimlik doğrulama veya yönetimden onay bekliyor.
    Karakter kısıtlamasını büyük ihtimalle satırı taştığı için istiyorsun. Eğer öyle ise direk şu css kodunu kullanmanı tavsiye ederim.
    .css{
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    }
  • 25-09-2014, 00:36:19
    #3
    rob33n adlı üyeden alıntı: mesajı görüntüle
    Karakter kısıtlamasını büyük ihtimalle satırı taştığı için istiyorsun. Eğer öyle ise direk şu css kodunu kullanmanı tavsiye ederim.
    .css{
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    }
    hocam bunu nereye yazmam gerekiyor ?
    konuda yazdığım kodla alakalı mı bu kod ?
  • 25-09-2014, 12:24:55
    #4
    Yapmak istediğin sadece karakter sınırlaması mı yoksa sitede düzgün görünmesi mi?

    Eğer düzgün görünsün, benim verdiğim boyutu aşmasın istiyorsan bu verdiğim css kodu işini fazlasıyla görür. Atıyorum sen 300px uzunluk vermişsindir, ama oraya gelen yazı 300px'den büyüktür ve haliye boyutu otomatik artıracağı için diğer görünümleri de bozar.

    Yok ben sadece karakter sınırlayacağım diyorsan databound event'ını kullan veya html karakter içermiyorsa direk sql'den çekerken sınırlandırarak getirirdim.
  • 25-09-2014, 23:51:49
    #5
    rob33n adlı üyeden alıntı: mesajı görüntüle
    Yapmak istediğin sadece karakter sınırlaması mı yoksa sitede düzgün görünmesi mi?

    Eğer düzgün görünsün, benim verdiğim boyutu aşmasın istiyorsan bu verdiğim css kodu işini fazlasıyla görür. Atıyorum sen 300px uzunluk vermişsindir, ama oraya gelen yazı 300px'den büyüktür ve haliye boyutu otomatik artıracağı için diğer görünümleri de bozar.

    Yok ben sadece karakter sınırlayacağım diyorsan databound event'ını kullan veya html karakter içermiyorsa direk sql'den çekerken sınırlandırarak getirirdim.
    hocam ben gridviewer de mesaj alanında karakter sınırlaması yapmak istiyorum yani attım 50 den uzunsa üzerine gelince devamıda görünecek.
    bide bu arada databound event kodunu yollayabilir misiniz ?
  • 26-09-2014, 00:10:51
    #6
    protected void GridView1_RowDataBound(object sender, GridViewRowEventArgs e)
    {
        if (e.Row.RowType == DataControlRowType.DataRow)
        {
            foreach (TableCell cell in e.Row.Cells)
            {
                
            }
        }
    }
  • 26-09-2014, 02:33:25
    #7
    rob33n adlı üyeden alıntı: mesajı görüntüle
    protected void GridView1_RowDataBound(object sender, GridViewRowEventArgs e)
    {
        if (e.Row.RowType == DataControlRowType.DataRow)
        {
            foreach (TableCell cell in e.Row.Cells)
            {
                
            }
        }
    }
    hocam foreach içine ne yazacağız o konuda yardım edebilir misiniz ?