powered by simpleCommunicator - 2.0.51     © 2025 Programmizd 02
Форумы / WinForms, .Net Framework [игнор отключен] [закрыт для гостей] / Нужна помощь экспертов в C#
25 сообщений из 28, страница 1 из 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
25 сообщений из 28, страница 1 из 2
Форумы / WinForms, .Net Framework [игнор отключен] [закрыт для гостей] / Нужна помощь экспертов в C#
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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