DataGridView   zodpovězená otázka

VB.NET, WinForms, Databáze

Zdravim,

riesim momentalne jeden mensi problemik. K vypisu niektorych dat z databazy pouzivam DataGridView - vsetko funguje tak ako ma, ak nefungovalo tak som to vyriesil ;))

Ale! Mam x stlpcov a y riadkov a chcel by som spravit, pre lepsiu prehladnost nasledovne:

Dajme tomu ze v stlpci 4 mam data typu boolean (cize ano/nie). A chcel by som spravit aby kazdy riadok v DataViewGride bol cerveny tam, kde je tato hodnota nie. Je to mozne spravit? Ak ano tak ako, pretoze som na to neprisiel. Dakujem za kazdu radu pripadne kusok kodu :o)

nahlásit spamnahlásit spam 0 odpovědětodpovědět

V čem to píšete? ASP.NET nebo Visual Basic? Pokud Visual Basic, jakým způsobem přidávate položky?

Doporučuji se podívat na událost OnRowDataBound, vykoná se vždy, když se generuje řádek k zobrazení. Tak můžete kontrolovat hodnotu toho co potřebujete a popřípadě obarvit řádek.

nahlásit spamnahlásit spam 1 / 1 odpovědětodpovědět

Pouzivam VB.NET

Dim DBConnection As New OleDb.OleDbConnection

Dim DataAdapter As OleDb.OleDbDataAdapter

Dim DataSet As New DataSet

Dim QueryString As String

DBConnection.ConnectionString = "PROVIDER=Microsoft.Jet.OLEDB.4.0; Data Source = " & strConnection

DBConnection.Open()

QueryString = "SELECT bla bla bla :o)"

DataAdapter = New OleDb.OleDbDataAdapter(QueryString, DBConnection)

DataAdapter.Fill(DataSet, "Pieces")

DBConnection.Close()

'dgdPieces_NOK je DataGrid

dgdPieces_NOK.DataSource = DataSet.Tables("Pieces")

nahlásit spamnahlásit spam 0 odpovědětodpovědět
        For i As Integer = 0 To DataGridView1.Rows.Count - 1
            If DataGridView1.Rows(i).Cells(index_sloupce).Value = True Then
                DataGridView1.Rows(i).DefaultCellStyle.BackColor = Color.Red
                DataGridView1.Rows(i).DefaultCellStyle.ForeColor = Color.White
            End If
        Next

Tento kód projde všechny řádky a zkontroluje pravdivost jednoho sloupce. Odpovídající řádky jsou obarveny na červeno.

nahlásit spamnahlásit spam 1 / 1 odpovědětodpovědět

Dakujem za odpoved!

nahlásit spamnahlásit spam 0 odpovědětodpovědět

Este by ma zaujimalo, ci je nieco podobne mozne spravit ale s tym rozdielom ze dany stlpec (ten kde je boolean) sa nezobrazuje v gride?

nahlásit spamnahlásit spam 0 odpovědětodpovědět
                       
Nadpis:
Antispam: Komu se občas házejí perly?
Příspěvek bude publikován pod identitou   anonym.
  • Administrátoři si vyhrazují právo komentáře upravovat či mazat bez udání důvodu.
    Mazány budou zejména komentáře obsahující vulgarity nebo porušující pravidla publikování.
  • Pokud nejste zaregistrováni, Vaše IP adresa bude zveřejněna. Pokud s tímto nesouhlasíte, příspěvek neodesílejte.

přihlásit pomocí externího účtu

přihlásit pomocí jména a hesla

Uživatel:
Heslo:

zapomenuté heslo

 

založit nový uživatelský účet

zaregistrujte se

 
zavřít

Nahlásit spam

Opravdu chcete tento příspěvek nahlásit pro porušování pravidel fóra?

Nahlásit Zrušit

Chyba

zavřít

feedback