Obsah fóra www.proxima-soft.sk www.proxima-soft.sk
Px Framework - ASP.NET komponenty pre rýchly vývoj databázových aplikácii
 
 FAQFAQ   HľadaťHľadať   Zoznam užívateľovZoznam užívateľov   Užívateľské skupinyUžívateľské skupiny   RegistráciaRegistrácia 
 NastaveniaNastavenia   Súkromné správySúkromné správy   PrihláseniePrihlásenie 
Ako sa pracuje s komponentou PxComboBox?

 
Pridať novú tému   Zaslať odpoveď    Obsah fóra www.proxima-soft.sk -> Ostatné komponenty Px Frameworku
Zobrazi predchádzajúcu tému :: Zobrazi nasledujúcu tému  
Autor Správa
Juraj Z.



Založený: streda, 26 januára 2011, 00:00
Príspevky: 17
Bydlisko: www.superinfo.sk

Príspevok Zaslal: pondelok, 20 júna 2011, 07:56    Predmet: Ako sa pracuje s komponentou PxComboBox?

Ako sa pracuje s komponentou PxComboBox?
Návrat hore
Zobraziť informácie o autorovi Odoslať súkromnú správu
admin



Založený: štvrtok, 17 júna 2010, 00:00
Príspevky: 49
Bydlisko: Fatranská 1, B.Bystrica

Príspevok Zaslal: pondelok, 20 júna 2011, 08:17    Predmet: PxComboBox - komponenta, ktorá slúži na výber dát zo zoznamu

Here you will find an article about PxComboBox component in English:
http://www.proxima-soft.sk/articles/PxComboBox-component-for-selecting-data-from-list-similar-to-the-DropDownList-component.html

Komponenta PxComboBox pracuje obdobne, alebo ma podobné property, ako komponenta PxEdit. Preto nemá zmysel sa nimi podrobne zaoberať, môžete si prečítať články o komponente PxEdit. Veci, ktoré boli podrobne popísané pri komponente PxEdit, budú tuná prejdené len telegraficky, zbežne.

Pomocou komponenty PxComboBox môžeme automaticky editovať stĺpec riadka tabuľky, ktorý je natiahnutý v komponente PxWebQuery. Vytvoríme si súbor AddAdresar.aspx, a do neho zapíšeme nasledujúcu definíciu komponenty PxComboBox:

Súbor AddAdresar.aspx:

kód:
<Prx:PxComboBox ID="cmbPravnaForma" runat="server" AddTableRow="True"></Prx:PxComboBox> 


V súbore AddAdresar.aspx.cs, si zase zadefinujeme prepojenie komponenty PxComboBox s komponentou PxWebQuery, a jej prepojenie na konkrétny stĺpec tabuľky.

Súbor AddAdresar.aspx.cs:

kód:
protected void Page_Load(object sender, EventArgs e)
{
  cmbPravnaForma.PxDataSource = wquAdresar;
  cmbPravnaForma.FieldName = "idpravnaforma";
}


Komponenta PxComboBox podporuje automatické načítanie zoznamu do svojho tela, a automatické uloženie vybranej hodnoty do databázy, pri vykonaní príkazu Post() na komponente PxWebQuery. Na to aby došlo ku automatickému načítaniu dát do zoznamu komponenty PxComboBox, musíme na komponentu PxWebQuery, na ktorú je napojená naša komponenta PxComboBox, uvaliť parameter AddParamKey, poprípade parameter AddParamWebQuery.

AddParamKey slúži na prepojenie tabuľky z číselníkom. Metóda AddParamKey je metódou komponenty PxWebQuery. Filozofia Px Frameworku je taká, aby čo najviac informácii bolo definovaných na komponente PxWebQuery. Týmto sa vlastne šetrí programovanie a zápis pri komponentách PxSuperGrid, PxEdit, PxComboBox a pod. Všetky tieto komponenty si požičiavajú dáta a nastavenie z komponenty PxWebQuery. Preto na komponente PxWebQuery máme množstvo procedúr a metód, prostredníctvom ktorých definujeme rôzne zobrazenie a prepojenie medzi tabuľkami.

Taká najjednoduchšia metóda prostredníctvom, ktorej sa definuje prepojenie medzi hlavnou tabuľkou a číselníkom je metóda AddParamKey.

Tuto definíciu môžeme zapísať do súboru Adresar.aspx.cs.

kód:
protected void Page_Load(object sender, EventArgs e)
{
  if ((!IsPostBack)&&(wquAdresar.Active==false))
  {
    string sSQLText1 = "select IDPravForm as Key, Name as Value from PravForm Order By Value";
    wquAdresar.ConnectString = "User Id=skodapeter;Password=aa;Data Source=xe;";
    wquAdresar.SQLSelect = "select idadresar,name,address,idpravnaforma,create_date from Adresar";
    wquAdresar.AddParamKey("idpravnaforma", "Key", "Value", "Value", "Key", sSQLText1);
    wquAdresar.Open();
    wquAdresar.Columns["idadresar"].Caption = "ID";
    wquAdresar.Columns["name"].Caption = "Meno Osoby";
    wquAdresar.Columns["idpravnaforma"].Caption = "Právna Forma";
    wquAdresar.Columns["address"].Caption = "Adresa";
    wquAdresar.Columns["create_date"].Caption = "Dátum založenia";
  }
  else
  {
  }
  grdAdresar.PxDataSource = wquAdresar;
  grdAdresar.DataBind();
}


Popis Parametrov metódy AddParamKey:
C# syntax:


kód:
public void AddParamKey(string aFieldName, string aFieldNameKey,
        string aFieldNameValue, string aFieldToView,
        string aFieldToDB, string aSQLText);


Popis parametrov:

aFieldName - Meno stĺpca v tabuľke na ktorý sa aplikuje metóda AddParamKey
aFieldNameKey - Meno stĺpca číselníka, ktorý reprezentuje kľuč číselníka (toto meno stĺpca sa dá zistiť z Sql príkazu, ktorý sa zadáva do parametra aSQLText)
aFieldNameValue - Meno stĺpca číselníka, ktorý reprezentuje hodnotu(Value) číselníka (toto meno stĺpca sa dá zistiť z Sql príkazu, ktorý sa zadáva do parametra aSQLText)
aFieldToView - tu sa zadáva meno stĺpca, ktorého hodnota sa bude zobrazovať v Gride(PxSuperGrid)
aFieldToDB - tu sa zadáva meno stĺpca, ktorého hodnota bude zapísaná do databázy
aSQLText - tu sa zadefinuje SQL príkaz pre načítanie číselníka, jednotlivé stĺpce je vhodne označiť ako Key a Value, kvôli lepšej prehľadnosti

Po uvalení parametra AddParamKey na komponentu PxWebQuery, a napojení komponenty PxComboBox, si táto komponenta pri načítaní automaticky natiahne dáta, a pri ukladaní sa automaticky uloží zvolená hodnota do databázy.



Na zarovnanie komponenty sa opäť používajú property AddTableRow, TableBegin a TableEnd, ktoré sú dobre popísané a rozobrané v časti kde je popísaná komponenta PxEdit.

Názov popiskov Caption, alebo názvy stĺpcov v gride(Title) môžete zadať centrálne, pri definícii komponenty PxWebQuery, kde hodnota v hranatých zátvorkách je názov stĺpca:

kód:
wquAdresar.Columns["NAME"].Caption = "Priezvisko a Meno";


Zmena popisku komponenty PxComboBox (Label):
Zmenu popisku komponenty PxComboBox, okrem centrálnej definície, môžeme vykonať nasledujúcim spôsobom:

kód:
cmbPravnaForma.Caption = "Právna forma 2";



Tu ďalej, nájdete funkčný príklad s komponentou PxComboBox, aj so zdrojovými kódmi. Tento funkčný príklad na tomto webe, beží pod databázou MySQL 5.0.

PxComboBox - komponenta, ktorá slúži na výber dát zo zoznamu, obdoba komponenty DropDownList
Návrat hore
Zobraziť informácie o autorovi Odoslať súkromnú správu
Pridať novú tému   Zaslať odpoveď    Obsah fóra www.proxima-soft.sk -> Ostatné komponenty Px Frameworku Časy uvádzané v GMT + 1 hodina