powered by simpleCommunicator - 2.0.51     © 2025 Programmizd 02
Форумы / WinForms, .Net Framework [игнор отключен] [закрыт для гостей] / Нужна помощь экспертов в C#
28 сообщений из 28, показаны все 2 страниц
Нужна помощь экспертов в C#
    #39660578
SAS2014
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Подскажите, как можно сделать так, чтобы вместо 0,1 и null в combobox попадали по условию автор или потребитель?

Т.е. из столбца базы данных оракле, попадают в данный столбец в датагрид инфа см. рисунок
Причем в комбоксе так же должно быть два варианта т.е. возможно менять его значения, например, с автора на потребителя и наоборот.
Код: c#
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
private void button5_Click(object sender, EventArgs e)
        {
            string t1 = "Автор";
            string t2 = "Потребитель";
         
            
            // Вкл\выкл чекбоксов по условию
            for (int i = 0; i < this.dataGridView2.RowCount; i++)
            {
                string s = this.dataGridView2[3, i].Value.ToString();
                if (s == "") s = "0";
                if (int.Parse(s) < 1)
                {
                    

                   // MessageBox.Show(t1.ToString());
                this.dataGridView2[3, i].Value = t2;
                }
                else
                {
                    
                   // MessageBox.Show(t2.ToString());
                   this.dataGridView2[3, i].Value = t1;
                }
            }
        }
...
Рейтинг: 0 / 0
Нужна помощь экспертов в C#
    #39660579
SAS2014
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
конечный результат ... что входящих данных из базы, были заменены comobox, в виде раскрывающего списка, первое значени которого подставляется в зависимости от входящих данных из базы
...
Рейтинг: 0 / 0
Нужна помощь экспертов в C#
    #39660580
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
SAS2014,

Вам бы книжку о привязке данных в WinForms почитать не мешало.

У DataGridViewComboBoxColumn есть такие свойства как:
- DataSource , через которое можно задать источник данных, что будут в виде выпадающего списка отображаться в комбобоксе;
- DisplayMember , что определяет значения какого поля из данных будут отображаться в виде текста;
- ValueMember , которое определяет, что использовать в качестве выбранного значения.

По ссылкам есть примеры.
...
Рейтинг: 0 / 0
Нужна помощь экспертов в C#
    #39660582
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
...
Рейтинг: 0 / 0
Нужна помощь экспертов в C#
    #39660609
SAS2014
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
спс за инфу
...
Рейтинг: 0 / 0
Нужна помощь экспертов в C#
    #39661059
SAS2014
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Данный код добавляет в datagridview2 столбец «TEST» с набором данных, который формируется циклом по условию в зависимости от значений в столбце «Автор\Потребитель».
Возможно ли сменить стиль столбца «Автор\Потребитель» на стиль столбца «TEST» со всеми вытекающимся т.е. срабатывание условия, набором данных?
Если да, то что нужно добавить\изменить в коде?
Для наглядности добавил скрин.
Код: c#
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
private void button6_Click(object sender, EventArgs e) //TEST
        {
            string t1 = "Автор";
            string t2 = "Потребитель";

            DataGridViewComboBoxColumn cb = new DataGridViewComboBoxColumn();
            cb.HeaderText = "TEST";
            cb.Items.AddRange(new string[] { t2 , t1});
            dataGridView2.Columns.Add(cb);

            for (int i = 0; i < this.dataGridView2.RowCount; i++)
            {
                string s = this.dataGridView2[3, i].Value.ToString(); // столбец Автор\Потребитель
                if (s == "") s = "0";
                if (int.Parse(s) < 1)
                {
                    this.dataGridView2[4, i].Value = t2;
                }

                else
                {
                    this.dataGridView2[4, i].Value = t1;
                }
            }
        }
...
Рейтинг: 0 / 0
Нужна помощь экспертов в C#
    #39661061
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
SAS2014,

а если простым языком попробовать объяснить?
...
Рейтинг: 0 / 0
Нужна помощь экспертов в C#
    #39661092
SAS2014
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
skyANASAS2014,

а если простым языком попробовать объяснить?

надо чтобы вывод колонки test попадал в первую колонку, ты инфу скидывал, анализировал и что понял воплотил в то что на скрине

т.е
сейчас
1 колонка имеет тип textbox
и данные там тип integer
1
0
null


Колонка ТЕСТ тип combobox
тип данных string
набор данных (автор, потребитель)


Надо
1 колонка тип combobox
тип данных string
набор данных (автор, потребитель) (заполнять набор данных по условию значений из базы)
...
Рейтинг: 0 / 0
Нужна помощь экспертов в C#
    #39661125
Ролг Хупин
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
SAS2014skyANASAS2014,

а если простым языком попробовать объяснить?

надо чтобы вывод колонки test попадал в первую колонку, ты инфу скидывал, анализировал и что понял воплотил в то что на скрине

т.е
сейчас
1 колонка имеет тип textbox
и данные там тип integer
1
0
null


Колонка ТЕСТ тип combobox
тип данных string
набор данных (автор, потребитель)


Надо
1 колонка тип combobox
тип данных string
набор данных (автор, потребитель) (заполнять набор данных по условию значений из базы)

"ты инфу скидывал, анализировал и что понял воплотил в то что на скрине"

вот, понятный язык
...
Рейтинг: 0 / 0
Нужна помощь экспертов в C#
    #39661761
SAS2014
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ролг ХупинSAS2014пропущено...


надо чтобы вывод колонки test попадал в первую колонку, ты инфу скидывал, анализировал и что понял воплотил в то что на скрине

т.е
сейчас
1 колонка имеет тип textbox
и данные там тип integer
1
0
null


Колонка ТЕСТ тип combobox
тип данных string
набор данных (автор, потребитель)


Надо
1 колонка тип combobox
тип данных string
набор данных (автор, потребитель) (заполнять набор данных по условию значений из базы)

"ты инфу скидывал, анализировал и что понял воплотил в то что на скрине"

вот, понятный язык

тот кто не понимает в C# ничего то он ищет в сообщение не вопросы, а инфу которую можно прокомментировать не адекватными словами
...
Рейтинг: 0 / 0
Нужна помощь экспертов в C#
    #39661824
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
SAS2014,

человек намекает на то, что понятнее не стало.

Зачем Вам какая-то колонка TEST? Вы можете просто рассказать, кто такие Автор и Потребитель, зачем их выбирать, кому и откуда?
И что потом с выбранным вариантом должно произойти?

Примеры по ссылкам смотрели? Что там не понятно?
...
Рейтинг: 0 / 0
Нужна помощь экспертов в C#
    #39661828
SAS2014
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
skyANASAS2014,

человек намекает на то, что понятнее не стало.

Зачем Вам какая-то колонка TEST? Вы можете просто рассказать, кто такие Автор и Потребитель, зачем их выбирать, кому и откуда?
И что потом с выбранным вариантом должно произойти?

Примеры по ссылкам смотрели? Что там не понятно?

суть в том что потребитель и автор это смысл значений которые хранятся в столбце базы данных
а для удобства понимания информации из базы ... замутил такую штуку где будет написано кто автор кто потребитель....
например
ФИО автор\потребитель
иванов автор (комбобокс)
петров потребитель (комбобокс)
...
Рейтинг: 0 / 0
Нужна помощь экспертов в C#
    #39661829
SAS2014
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
чтобы не было 1,0 и прочее в датагриде, а замена была на автора и потребителя
...
Рейтинг: 0 / 0
Нужна помощь экспертов в C#
    #39661845
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
SAS2014чтобы не было 1,0 и прочее в датагриде, а замена была на автора и потребителя
Для этого надо всего-лишь правильно задать свойства DataMember и ValueMember.
...
Рейтинг: 0 / 0
Нужна помощь экспертов в C#
    #39661852
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Как-то так:
Код: c#
1.
2.
3.
4.
5.
6.
var subjectTypes = new Disctionary<Int32, String> { { 0, "Автор" }, { 1, "Потребитель" } };

comboboxColumn.DisplayMember = "Value";
comboboxColumn.ValueMember = "Key";

comboboxColumn.DataSource = subjectTypes;
...
Рейтинг: 0 / 0
Нужна помощь экспертов в C#
    #39661855
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Или через перечисление (enum):
Код: c#
1.
2.
3.
4.
5.
public enum SubjectType
{
    Author = 0,
    Consumer = 1
}


Код: c#
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
var subjectTypes = new Disctionary<SubjectType, String>
{
    { SubjectType.Author, "Автор" },
    { SubjectType.Consumer, "Потребитель" }
};

comboboxColumn.DisplayMember = "Value";
comboboxColumn.ValueMember = "Key";

comboboxColumn.DataSource = subjectTypes;
...
Рейтинг: 0 / 0
Нужна помощь экспертов в C#
    #39661857
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ну или завести отдельный тип
Код: c#
1.
2.
3.
4.
5.
public class SubjectType
{
    public int Id { get; set; },
    public string Name { get; set; }
}

и через список (List).

Ну или через DataTable, как в примере, давно могли бы сделать.
...
Рейтинг: 0 / 0
Нужна помощь экспертов в C#
    #39698223
SAS2014
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Пишу прогу, которая ищет файлы в указанных каталогах причем более чем в одном
кароче вот код
Код: c#
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
// Начать поиск ...
        private void button1_Click(object sender, EventArgs e)
        {
            dataGridView1.Rows.Clear();
            label10.Visible = true;
            button1.Enabled = false;
            t_file.Enabled = false;
            label10.Text = "В процессе ...";
            label10.ForeColor = Color.OrangeRed;
            label5.Enabled = false; label6.Enabled = false; label7.Enabled = false; label8.Enabled = false;


            backgroundWorker1.RunWorkerAsync(a); //запуск backgroundWorker1
        }

        private void backgroundWorker1_DoWork(object sender, DoWorkEventArgs e) // визуальное добавление найденых адресов файлов в листбокс
        {
            foreach (string pth in listBox2.Items)
            {
            string a = pth.ToString();
            string fil = t_file.Text;

            string[] allFoundFiles = Directory.GetFiles(a, fil, SearchOption.AllDirectories);
            foreach (string file in allFoundFiles)
            {
                dataGridView1.Invoke(new MethodInvoker(() => dataGridView1.Rows.Add(file))); // добавление файлов в datagridview
                Thread.Sleep(100); // пауза
            }

            }

            Invoke(new Action(() =>
           {
               label10.Text = "Выполнено";
               label10.ForeColor = Color.Green;
               button1.Enabled = true;
               t_file.Enabled = true;
               label5.Enabled = true; label6.Enabled = true; label7.Enabled = true; label8.Enabled = true;
           }));
        }




Все бы ничего, но у меня не получается написать такую штуку, чтобы нажал на кнопку и процесс остановился
код кнопки, который не работает

Код: c#
1.
2.
3.
4.
5.
6.
7.
// Стоп поиск ...
        private void button5_Click(object sender, EventArgs e)
        {
            backgroundWorker1.WorkerSupportsCancellation = true;
            backgroundWorker1.CancelAsync();
            backgroundWorker1.Dispose();
        }



Может кто то подскажет как решить проблему?
...
Рейтинг: 0 / 0
Нужна помощь экспертов в C#
    #39698804
SAS2014
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
И куда пропали эксперты си шарпа?
...
Рейтинг: 0 / 0
Нужна помощь экспертов в C#
    #39698807
Фотография Shocker.Pro
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Я тебе уже говорил. Никому не нужна старинная тема с невменяемым неинформативным заголовком. Я думаю, сюда просто не заглядывают. Я вот даже не вчитывался, даже не понял, что у тебя какой-то новый вопрос возник, а не пережевывание старого
...
Рейтинг: 0 / 0
Нужна помощь экспертов в C#
    #39698889
Дмитрий Мух
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
SAS2014И куда пропали эксперты си шарпа?Делом заняты.
...
Рейтинг: 0 / 0
Нужна помощь экспертов в C#
    #39698927
Siemargl
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
SAS2014,

Использовать, как пример в справке. Он работает.

Могу предположить, что WorkerSupportsCancellation надо выставлять перед запуском треда, а не так хитропопо =)

ЗЫ. За button1_Click убивал бы....
...
Рейтинг: 0 / 0
Нужна помощь экспертов в C#
    #39698941
Siemargl
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Кстати, работать не должно. Из worker.DoWork() нельзя обращаться к главному окну с циклом обработки сообщений, т.е грубо ко всему GUI
...
Рейтинг: 0 / 0
Нужна помощь экспертов в C#
    #39699100
Siemargl
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
SiemarglКстати, работать не должно. Из worker.DoWork() нельзя обращаться к главному окну с циклом обработки сообщений, т.е грубо ко всему GUIЧерез Invoke можно, но производительность.....
Короче, надо как в учебнике.
...
Рейтинг: 0 / 0
Нужна помощь экспертов в C#
    #39699128
Фотография Shocker.Pro
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Дима, перелогинься обратно )
...
Рейтинг: 0 / 0
Нужна помощь экспертов в C#
    #39699333
SAS2014
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ок потоком, разберусь

ту более простой вопрос, хм для тех кто очень хорошо пишет коды нна сишарпе

нашел некий код который позволяет выполнять поиск файлов по условию дате изменения
Код: c#
1.
var foundFiles = dirSearch.GetFiles().Where(file => file.LastWriteTime >= dateTimePicker1.Value && file.LastWriteTime <= dateTimePicker2.Value);



как его скрестить )) с моим кодом?

Код: c#
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
foreach (string pth in listBox2.Items)
            {
            string a = pth.ToString();
            string fil = t_file.Text;
            string create_date = textBox1.Text;
            //string s_date = textBox2.Text;
            //string p_date = textBox3.Text;
    
            string[] allFoundFiles = Directory.GetFiles(a, fil, SearchOption.AllDirectories);
            foreach (string file_ in allFoundFiles)
            {

                dataGridView1.Invoke(new MethodInvoker(() => dataGridView1.Rows.Add(file_))); // добавление файлов в datagridview
                Thread.Sleep(100); // пауза
            }

            }



PS
На форме есть 4 элемента
текстобокс1
текстобокс2

в эти текстбоксы попадают значение из dateTimePicker вот эти значение надо учитывать при поиске файловв каталогах
...
Рейтинг: 0 / 0
Нужна помощь экспертов в C#
    #39699338
Siemargl
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
SAS2014,

В DoWork сгенерил список
В RunWorkerCompleted из списка загнал в Грид
...
Рейтинг: 0 / 0
Нужна помощь экспертов в C#
    #39699345
SAS2014
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
SiemarglSAS2014,

В DoWork сгенерил список
В RunWorkerCompleted из списка загнал в Грид
это ответ на какой вопрос?
...
Рейтинг: 0 / 0
28 сообщений из 28, показаны все 2 страниц
Форумы / WinForms, .Net Framework [игнор отключен] [закрыт для гостей] / Нужна помощь экспертов в C#
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]