Pocet zaznamov GridView   zodpovězená otázka

ASP.NET WebForms

Chcem sa spytat ako najjendoduchsie mozem zobrazit na stranke asp.net pod Gridom pocet zaznamov GridView.

Mam Grid, ako datasource pouzivam SqlDataSource s parametrami a roznymi ulozenými procedurami v zavislosti od roznych vyberov. Vzdy to vrati samozrejme rôzny pocet zaznamov ktory potrebujem zobrazit.

Dik moc za pomoc.

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

Dobrý den, počet záznamů zjistíte takto:

GridView1.Rows.Count

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

Zatial vdaka, skusim

je to celkovy pocet zaznamov nezavysle na strankovaní ?

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

Ne, je to počet řádků v gridu a započítává se do toho záhlaví a podobné věci.

Celkový počet záznamů, které by dotaz vrátil, nezávisle na stránkování, se dá zjistit z proměnné e v události Selected datového zdroje.

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

Dakujem za radu,

este som doteraz toto nepouzival .

Mozes mi popist blizsie ako to mam urobit.

mam zdroj

    <asp:SqlDataSource ID="sourceZoznam" runat="server" ConnectionString="<%$ ConnectionStrings:PersonalConnectionString %>" 
        SelectCommand="GetPrislusnici" SelectCommandType="StoredProcedure" onselecting="sourceZoznam_Selecting">
        <SelectParameters>
            <asp:ControlParameter ControlID="VyberORKR" Name="OrgJednotkaH" PropertyName="SelectedValue" Type="String" />
            <asp:ControlParameter ControlID="VyberOdbornost" Name="odbKey" PropertyName="SelectedValue" Type="String" />    
            <asp:ControlParameter ControlID="PlatnostOdTextBox" Name="PlatnostOd" PropertyName="Text" Type="DateTime" />
            <asp:ControlParameter ControlID="PlatnostDoTextBox" Name="PlatnostDo" PropertyName="Text" Type="DateTime" />
        </SelectParameters>
    </asp:SqlDataSource>

a niede na stranke label

<asp:Label ID="LblPocetZaznamov" runat="server" Text="0">

kedy treba do

LblPocetZaznamov.Text = sourceZoznam. .....

nacitat a odkial

Vdaka

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

Zmenil som kod zdroja - pridal som OnSelected="sourceZoznam_Selected"

<asp:SqlDataSource ID="sourceZoznam" runat="server" ConnectionString="<%$ ConnectionStrings:PersonalConnectionString %>" 
        SelectCommand="GetPrislusnici" SelectCommandType="StoredProcedure" onselecting="sourceZoznam_Selecting" OnSelected="sourceZoznam_Selected" >
        <SelectParameters> 
            <asp:ControlParameter ControlID="VyberORKR" Name="OrgJednotkaH" PropertyName="SelectedValue" Type="String" />
            <asp:ControlParameter ControlID="VyberOdbornost" Name="odbKey" PropertyName="SelectedValue" Type="String" />    
            <asp:ControlParameter ControlID="PlatnostOdTextBox" Name="PlatnostOd" PropertyName="Text" Type="DateTime" />
            <asp:ControlParameter ControlID="PlatnostDoTextBox" Name="PlatnostDo" PropertyName="Text" Type="DateTime" />
        </SelectParameters>
    </asp:SqlDataSource>

a kod

  protected void sourceZoznam_Selected(object sender, SqlDataSourceSelectingEventArgs e)
    {
        LblPocetZaznamov.Text = e.Arguments.TotalRowCount.ToString(); 
    }

ale pri kompilácii vyhodí chybu

"Error 1 No overload for 'sourceZoznam_Selected' matches delegate 'System.Web.UI.WebControls.SqlDataSourceStatusEventHandler' D:\Users\stanislav.klanduch\Documents\Visual Studio 2008\WebSites\EvidOdbornosti\Vybery.aspx 140"

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

Změňte SqlDataSourceSelectingEventArgs na SqlDataSourceStatusEventArgs a je to.

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

Super už to funguje.

Dik

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

Dobrý den,

řeším stejný problém a přeložil jsem si kód do VB

Protected Sub SqlDataSource2_Selected(ByVal sender As Object, ByVal e As SqlDataSourceStatusEventArgs)

Label2.Text = e.Arguments.TotalRowCount.ToString()

End Sub

Vyhazuje mi to však chybu

'Arguments' is not a member of 'System.Web.UI.WebControls.SqlDataSourceStatusEventArgs'.

Díky za radu

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