Ukrywanie Kolumn w GridView

0
Witam mam taki kod:

protected void BtnForm_Click1(object sender, EventArgs e)
    {
        if (BtnForm.Text == "Wyświetl formularz")
        {
            string tab = string.Empty;
            tab = "<table class=\"borderTable\"><tr>";
            tab += string.Format("<th>Płeć</th><th>Data Wysłania</th>");

            SqlConnection sc = new SqlConnection(ConfigurationManager.ConnectionStrings["ConnectionString"].ConnectionString);
            SqlDataAdapter da = new SqlDataAdapter("TT_Form_Get", sc);
            //da.SelectCommand.CommandType = CommandType.StoredProcedure;
            //da.SelectCommand.Parameters.Add("@Sex", SqlDbType.NVarChar, 50);
            //da.SelectCommand.Parameters.Add("@DateSend", SqlDbType.NVarChar, 50);
            DataTable dt = new DataTable();
            da.Fill(dt);
            sc.Open();
            DataRow[] dr = dt.Select();
            sc.Close();
            for (int i = 0; i < dr.Length; i++)
            {
                tab += string.Format("<tr><td>{0}</td><td>{1}</td></tr>",
                                dr[i]["Sex"].ToString(), dr[i]["DateSend"].ToString());
            }
            tab += "</tr></table>";
            LitType2.Text = tab;
            BtnFromAll.Visible = true;
            BtnForm.Text = "Ukryj formularz";
            LitType2.Visible = true;
            GridView1.Visible = true;
            GridView1.DataSource = dt;
            GridView1.DataBind();
            GridView1.HeaderRow.Cells[0].Text = "Płeć";
            GridView1.HeaderRow.Cells[1].Text = "Wiek";
            GridView1.HeaderRow.Cells[2].Text = "Rodzaj";
            GridView1.HeaderRow.Cells[3].Text = "Marka";
            GridView1.HeaderRow.Cells[4].Text = "Wysokość obcasu";
            GridView1.HeaderRow.Cells[5].Text = "Data wysłania";
            GridView1.HeaderRow.Cells[6].Text = "Adres IP";
            
            
                  
        }
        else
        {
            BtnFromAll.Visible = false;
            BtnForm.Text = "Wyświetl formularz";
            LitType2.Visible = false;
            GridView1.Visible = false;
        }

Jestem początkującym a więc mam śmietnik w kodzie , oraz wyswietlanie tabelki w kontrolce Lit. , testuje sobie GridView ale nie mam pojęcia jak ukryć kolumny chce mieć wyświetlone tylko Płeć i Date wysłania.

0
 gridview.Columns["ColumnName"].Visible = false;
0

Niestety to nie jest prawidłowa odpowiedź gdyż to tyczy się tabeli nie pobieranej z bazy , aby ukryć kolumny z bazy sql trzeba użyć funkckji :) szkoda ze nikt mi nie pomogł szybciej

protected void GridView1_RowCreated(object sender, GridViewRowEventArgs e)
{

    //Just changed the index of cells based on your requirements
    e.Row.Cells[0].Visible = true;
    e.Row.Cells[1].Visible = false;
    e.Row.Cells[2].Visible = false;
    e.Row.Cells[3].Visible = false;
    e.Row.Cells[4].Visible = false;
    e.Row.Cells[5].Visible = true;
    e.Row.Cells[6].Visible = false;
1
  1. Stringi są niemutowalne więc ich konkatenacja powoduje tworzenie całkiem nowego obiektu, co w niektórych przypadkach może być ekstremalnie niewydajne. Zamiast tego użyj klasy StringBuilder, poczytaj o tym
  2. Powyższy przykład można zrobić przy pomocy pętli for i kilku warunków if
  3. Wklejaj kod przy pomocy znaczników dla odpowiedniego języka
0

a jakbyś znalazł chwile "zajebioza" to mógłbyś mi przerobić ten kod w taki sposob o którym mówisz ?:P chętnie bym sie nauczył tego

0
schorell napisał(a):

a jakbyś znalazł chwile "zajebioza" to mógłbyś mi przerobić ten kod w taki sposob o którym mówisz ?:P chętnie bym sie nauczył tego

Jak ja Ci zrobie to sie niczego nie nauczysz. Poczytaj dokładnie o tym jak działają stringi w C# i jak działa StringBuilder, wszystko masz w sieci (np. msdn), albo mozesz kupic sobie tę książkę: http://www.amazon.com/C-6-0-NET-4-6-Framework/dp/1484213335/ref=sr_1_1?s=books&ie=UTF8&qid=1460014539&sr=1-1&refinements=p_27%3AAndrew+Troelsen

1 użytkowników online, w tym zalogowanych: 0, gości: 1