Question AutoGenerateRows DetailsView - How to get cell values?

raysefo

Well-known member
Joined
Jul 21, 2010
Messages
207
Programming Experience
Beginner
Hi,

I have a DetailsView which is autogeneraterows because I m populating this DetailsView from different tables with if statement in my code. Here is the code below;

aspx page:
VB.NET:
<asp:DetailsView ID="DetailsView1" runat="server" Height="69px" Width="339px" AllowPaging="True"
                            EnablePagingCallbacks="True" Font-Bold="True" Font-Names="Arial" Font-Size="Small"
                            CellPadding="4" ForeColor="#333333" GridLines="None"
                            style="margin-top: 0px">
                            <AlternatingRowStyle BackColor="White" ForeColor="#284775" />
                            <CommandRowStyle BackColor="#E2DED6" Font-Bold="True" />
                            <EditRowStyle BackColor="#999999" />
                            <FieldHeaderStyle BackColor="#E9ECF1" Font-Bold="True" />
                            <FooterStyle BackColor="#5D7B9D" Font-Bold="True" ForeColor="White" />
                            <HeaderStyle BackColor="#5D7B9D" Font-Bold="True" ForeColor="White" />
                            <PagerStyle BackColor="#284775" ForeColor="White" HorizontalAlign="Center" />
                            <RowStyle BackColor="#F7F6F3" ForeColor="#333333" />
                        </asp:DetailsView>

vb page:
VB.NET:
 Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
        If Not Page.IsPostBack Then
          
            Dim conn As New Data.SqlClient.SqlConnection(ConfigurationManager.ConnectionStrings("EformsConnectionString").ConnectionString)

            Dim comm As New Data.SqlClient.SqlCommand
            
            Dim dt As New DataTable
          
            Dim SqlSelectAdapter As New SqlClient.SqlDataAdapter
         
            SqlSelectAdapter.SelectCommand = comm
         

            'TASKLAR için.


            '
            If EformType = 1 Then
                

                comm.CommandText = "SELECT CASE [OdemeTuru] WHEN 1 THEN 'Nakit' WHEN 2 THEN 'Hesaba Havale' END AS 'Ödeme Türü', Eform_IsAvans.Hesaplar,  CONVERT(VARCHAR,CONVERT(MONEY,Eform_IsAvans.IsAvansTutari),1) AS 'İş Avans Tutarı', Eform_IsAvans.IsAvansBirim AS 'İş Avans Birimi', CONVERT (varchar(10), Eform_IsAvans.Tarih, 104) AS Tarih, Eform_IsAvans.Aciklama AS Açıklama, Users.name AS 'Talebi Yapan', CONVERT (varchar(20), Eform_IsAvans.CreationDate, 113) AS 'Talep Zamanı' FROM Eform_IsAvans INNER JOIN Tasks ON Eform_IsAvans.EFormID = Tasks.EformID INNER JOIN Users ON Eform_IsAvans.CreatedBy = Users.SAMAccountName WHERE Eform_IsAvans.EFormID = @EformID"
                comm.Connection = conn

              
            ElseIf EformType = 3 Then
              

                comm.CommandText = "select Eform_Egitim.EgitimAdi,CASE [EgitimTuru] WHEN 1 THEN 'Genel' WHEN 2 THEN 'Kişisel Eğitim' WHEN 3 THEN 'Mesleki Uzmanlık' END AS 'Eğitim Türü', CASE [EgitimTipi] WHEN 1 THEN 'Eğitim' WHEN 2 THEN 'Konferans/Seminer' WHEN 3 THEN 'Sertifika' WHEN 4 THEN 'Workshop' END AS 'Eğitim Tipi', Eform_Egitim.EgitimVerenFirma,CONVERT (varchar(10),Eform_Egitim.BaslangicTarihi, 104) AS 'Başlangıç Tarihi', CONVERT (varchar(10),Eform_Egitim.BitisTarihi, 104) AS 'Bitiş Tarihi',Eform_Egitim.EgitimSuresi, Eform_Egitim.Egitimyeri,Eform_Egitim.EgitimMaliyeti,Eform_Egitim.MaliyetBirimi,Eform_Egitim.KatilimNedeni,Users.name AS 'Talebi Yapan', CONVERT (varchar(20), Eform_Egitim.CreationDate, 113) AS 'Talep Zamanı' from(Eform_Egitim) INNER JOIN Tasks ON Eform_Egitim.EFormID = Tasks.EformID INNER JOIN Users ON Eform_Egitim.CreatedBy = Users.SAMAccountName WHERE Eform_Egitim.EFormID = @EformID"
                comm.Connection = conn

               
            ElseIf EformType = 4 Then
                

                comm.CommandText = "select CASE [FazlaMesaiTuru] WHEN 1 THEN 'Akşam' WHEN 2 THEN 'Haftasonu' WHEN 3 THEN 'Resmi Tatil' WHEN 4 THEN 'Bayram' END AS 'Fazla Mesai Türü', Eform_FazlaMesai.Sure,CONVERT (varchar(10),Eform_FazlaMesai.Tarih, 104) AS 'Tarih',Eform_FazlaMesai.Aciklama, Users.name AS 'Talebi Yapan', CONVERT (varchar(20), Eform_FazlaMesai.CreationDate, 113) AS 'Talep Zamanı' from(Eform_FazlaMesai) INNER JOIN Tasks ON Eform_FazlaMesai.EFormID = Tasks.EformID INNER JOIN Users ON Eform_FazlaMesai.CreatedBy = Users.SAMAccountName WHERE Eform_FazlaMesai.EFormID = @EformID"
                comm.Connection = conn

              
            ElseIf EformType = 5 Then
                

                comm.CommandText = "select CASE Eform_Izin.IzinTuru WHEN 1 THEN 'Yıllık İzin' WHEN 2 THEN 'Rapor' WHEN 3 THEN 'Mazeret' WHEN 4 THEN 'Doğum' WHEN 5 THEN 'Vefat' WHEN 6 THEN 'Evlilik' END AS 'İzin Türü', b.name AS 'Vekalet Edecek Kişi',CONVERT (varchar(10),Eform_Izin.BaslangicTarihi, 104) AS 'Başlangıç Tarihi', CONVERT (varchar(10),Eform_Izin.BitisTarihi, 104) AS 'Bitiş Tarihi',Eform_Izin.IzinSuresi, Eform_Izin.IletisimBilgisi,Eform_Izin.IzinAciklamasi, a.name AS 'Talebi Yapan', CONVERT (varchar(20), Eform_Izin.CreationDate, 113) AS 'Talep Zamanı' from(Eform_Izin) INNER JOIN Tasks ON Eform_Izin.EFormID = Tasks.EformID INNER JOIN Users a ON Eform_Izin.CreatedBy = a.SAMAccountName INNER JOIN Users b ON Eform_Izin.VekaletEdecekKisi = b.SAMAccountName WHERE Eform_Izin.EFormID = @EformID"
                comm.Connection = conn

            End If

            comm.Parameters.AddWithValue("@EformID", EformID)
            

            Try
                conn.Open()
                SqlSelectAdapter.Fill(dt)
               
            Catch ex As Exception

            Finally
                conn.Close()
            End Try

            DetailsView1.DataSource = dt
            DetailsView1.DataBind()

        End If
    End Sub

There is no problem with the above. What i would like to do is, how to get a cell value from this DetailsView in my code?

thanks in advance.

Best Regards
 
Back
Top