Пример #1
0
        private void Button_Click(object sender, RoutedEventArgs e)
        {
            double max, min;
            double d;

            if (Max.Equals(""))
            {
                max = double.MaxValue;
            }
            else if (!(double.TryParse(Max, out d)))
            {
                return;
            }
            else
            {
                max = d;
            }

            if (Min.Equals(""))
            {
                min = double.MinValue;
            }
            else if (!(double.TryParse(Min, out d)))
            {
                return;
            }
            else
            {
                min = d;
            }

            List <Res> l = new List <Res>( );

            listRes.Clear( );
            for (int i = 0; i < MainWindow.Resources.Len( ); i++)
            {
                WpfApp3.Res r = MainWindow.Resources.GetResourceAtI(i);

                String ek = r.eksploatisanje ? "DA" : "NE";
                String o  = r.obnovljiv ? "DA" : "NE";
                String s  = r.strateskiVazan ? "DA" : "NE";

                Regex match = new Regex(Ime, RegexOptions.IgnoreCase);
                Match mIme  = match.Match(r.ime);

                match = new Regex(Oznaka, RegexOptions.IgnoreCase);
                Match mOznaka = match.Match(r.oznaka);

                String etiketeStr = "";
                for (int j = 0; j < r.etikete.Count; j++)
                {
                    etiketeStr += r.etikete[j].oznaka + " ";
                }
                Double cena = double.Parse(r.cena);
                if (((mIme.Success && mIme.Value.Length == r.ime.Length) || Ime.Equals("")) &&
                    ((mOznaka.Success && mOznaka.Value.Length == r.oznaka.Length) || Oznaka.Equals("")) &&
                    (Tip.Equals("") || Tip.Equals(r.tip)) &&
                    cena <= max && cena >= min)
                {
                    l.Add(new Res( )
                    {
                        Ime = r.ime, Opis = r.opis, Oznaka = r.oznaka, Tip = r.tip, Slika = r.tipImg, Frekvencija = r.frekvencija, Ikonica = r.oznaka, Obnovljiv = o, Eksploatisanje = ek, StrateskiVazan = s, Mera = r.mera, Cena = r.cena, Datum = r.datum, Etikete = etiketeStr
                    });
                    listRes.Add(new Res( )
                    {
                        Ime = r.ime, Opis = r.opis, Oznaka = r.oznaka, Tip = r.tip, Slika = r.tipImg, Frekvencija = r.frekvencija, Ikonica = r.oznaka, Obnovljiv = o, Eksploatisanje = ek, StrateskiVazan = s, Mera = r.mera, Cena = r.cena, Datum = r.datum, Etikete = etiketeStr
                    });
                }
            }

            /*this.Close( );
             * var tablefil = new Table(l);
             * tablefil.ShowDialog( );*/
        }
Пример #2
0
        private void filter()
        {
            if (chack_filter.IsChecked.Equals(true))
            {
                double max, min;
                double d;
                if (Max.Equals(""))
                {
                    max = double.MaxValue;
                }
                else if (!(double.TryParse(Max, out d)))
                {
                    return;
                }
                else
                {
                    max = d;
                }

                if (Min.Equals(""))
                {
                    min = double.MinValue;
                }
                else if (!(double.TryParse(Min, out d)))
                {
                    return;
                }
                else
                {
                    min = d;
                }

                List <Res> l = new List <Res>( );
                listRes.Clear( );
                for (int i = 0; i < MainWindow.Resources.Len( ); i++)
                {
                    WpfApp3.Res r = MainWindow.Resources.GetResourceAtI(i);

                    String ek = r.eksploatisanje ? "DA" : "NE";
                    String o  = r.obnovljiv ? "DA" : "NE";
                    String s  = r.strateskiVazan ? "DA" : "NE";

                    Regex match = new Regex(Ime, RegexOptions.IgnoreCase);
                    Match mIme  = match.Match(r.ime);

                    match = new Regex(Oznaka, RegexOptions.IgnoreCase);
                    Match mOznaka = match.Match(r.oznaka);

                    String etiketeStr = "";
                    for (int j = 0; j < r.etikete.Count; j++)
                    {
                        etiketeStr += r.etikete[j].oznaka + " ";
                    }
                    Double cena = double.Parse(r.cena);
                    if ((r.ime.StartsWith(Ime) || Ime.Equals("")) &&
                        (r.oznaka.StartsWith(Oznaka) || Oznaka.Equals("")) &&
                        (Tip.Equals("") || Tip.Equals(r.tip)) &&
                        cena <= max && cena >= min)
                    {
                        l.Add(new Res( )
                        {
                            Ime = r.ime, Opis = r.opis, Oznaka = r.oznaka, Tip = r.tip, Slika = r.tipImg, Frekvencija = r.frekvencija, Ikonica = r.oznaka, Obnovljiv = o, Eksploatisanje = ek, StrateskiVazan = s, Mera = r.mera, Cena = r.cena, Datum = r.datum, Etikete = etiketeStr
                        });
                        listRes.Add(new Res( )
                        {
                            Ime = r.ime, Opis = r.opis, Oznaka = r.oznaka, Tip = r.tip, Slika = r.tipImg, Frekvencija = r.frekvencija, Ikonica = r.oznaka, Obnovljiv = o, Eksploatisanje = ek, StrateskiVazan = s, Mera = r.mera, Cena = r.cena, Datum = r.datum, Etikete = etiketeStr
                        });
                    }
                }
            }
        }