Tema: Re: C#, ComboBox, DropDown
Autorius: zZz
Data: 2010-05-19 15:41:47
Labas ;)

Reikia patikslint šitą.
0. Turiu, tarkim, DataView Rows'us:
    12345
    12435
    31248
    49841

1. Vedu ComboBox'e tekstą: 3
2. DataView atsifiltruoja į
    12345
    12435
    31248
3. Kviečiu DropDown ir
3.1. Parinktas item'as sąraše - 31248;
3.2. Text'as pakeistas į 31248.

Reikia, kad parinktas itemas būtų 12345 arba nieko, o Text'as - nepakeistas, 
t.y. 3.

Čia - KeyUp'as, kuris keičia DataView:

        protected override void OnKeyUp(KeyEventArgs e)
        {
            base.OnKeyUp(e);

            //Get the Typed Text and Find it in the list
            string sTypedText = this.Text;

            if (allowPartialSearch)
            {
                this.BeginUpdate();
                this.SuppressItemChangeEvent = true;
                //this.DroppedDown = false;

                string filterOrig = viewData.RowFilter;
                string filter = (string.IsNullOrEmpty(sTypedText) ? "" : 
string.Format("{0} like '%{1}%'", this.DisplayMember, sTypedText));

                viewData.RowFilter = filter;
                // If we found the Typed Text in the list then Autocomplete
                if (viewData.Count > 0)
                {
                    this.Text = sTypedText;
                    this.SelectionStart = sTypedText.Length;
                    orgText = sTypedText;
                }
                else
                {
                    viewData.RowFilter = filterOrig;
                    this.Text = orgText;
                    this.SelectionStart = orgText.Length;
                }
                this.SuppressItemChangeEvent = false;
                this.EndUpdate();
            }
        }


/* Help, pls! :) */


"Jornada Del Muerto" <ask@me.email> wrote in message 
news:ht0kji$okl$1@trimpas.omnitel.net...
> "zZz" <zZz@zirzilia.lt> wrote in message 
> news:ht085a$1gv$1@trimpas.omnitel.net...
>> Turiu ComboBox'ą, kurio DataSource'as yra DataView (filtruoja reikšmes
>> ComboBox.DisplayMember like '%ComboBox.Text%').
>> Kaip padaryti, kad ComboBox'as po DropDown įvykio parinktų pirmą reikšmę 
>> iš
>> sąrašo ir nepakeistų Text'o? :)
>>
>
> Sveiks,
>
>    Jei gerai supratau problema tai, mano controlas toki metoda turi (tiesa 
> by default pas mane visose select uzklausose grazinamas ID, NAME,... 
> laikomasi kad pirmas laukas visada bus ID, antras pavadinimu - combo 
> atveju jis visada vaizduojamas kaip tekstas combo):