Перейти из форума на сайт.

НовостиФайловые архивы
ПоискАктивные темыТоп лист
ПравилаКто в on-line?
Вход Забыли пароль? Первый раз на этом сайте? Регистрация
Компьютерный форум Ru.Board » Компьютеры » Прикладное программирование » Программирование в среде .NET (ASP.NET,ADO.NET) на C#/VB.NET

Модерирует : ShIvADeSt

 Версия для печати • ПодписатьсяДобавить в закладки
Страницы: 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 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162

Открыть новую тему     Написать ответ в эту тему

dneprcomp



Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
muzzle
 
Вместо массива используй поля рекордсета. Если не получится, занеси вcе сначала в массив.

Код:
        ' Populate the list box using an array as DataSource.  
        Dim USStates As New ArrayList()
        USStates.Add(New USState("Alabama", "AL"))
        USStates.Add(New USState("Washington", "WA"))
        USStates.Add(New USState("West Virginia", "WV"))
        USStates.Add(New USState("Wisconsin", "WI"))
        USStates.Add(New USState("Wyoming", "WY"))
        ListBox1.DataSource = USStates
 
        ' Set the long name as the property to be displayed and the short
        ' name as the value to be returned when a row is selected.  Here
        ' these are properties; if we were binding to a database table or
        ' query these could be column names.
 
        ListBox1.DisplayMember = "LongName"
 
        ListBox1.ValueMember = "ShortName"

 
 

 
Посмотри еще значение ComboBox.SelectedValue

Всего записей: 3920 | Зарегистр. 31-03-2002 | Отправлено: 22:50 09-09-2009 | Исправлено: dneprcomp, 22:58 09-09-2009
BlackVetal



Advanced Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
muzzle
Как у тебя настроено соединение с БД ? Лучше всего создать DataSet и в нем выполнять все операции с данными (Выборка с условиями, в том числе и сортировка, добавление, редактирование и удаление элементов). После операции с данными обновлять твой "combo". А при определенных условиях сохранять изменения в непосредственно в БД.

----------
Регистрация ника))
ОСАГО и КАСКО
Работа

Всего записей: 1094 | Зарегистр. 13-11-2005 | Отправлено: 07:04 10-09-2009
muzzle



Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
dneprcomp
Какой мне смысл использовать массив, если я работаю с базой данных? Может я не понял чего-то? И работать с массивом смысла  не вижу, т.к. мне нужно, используя данные комбобокса, удалять записи из базы данных.

Цитата:
Посмотри еще значение ComboBox.SelectedValue  

Помотрю, у меня там пусто.

Цитата:
        ListBox1.DisplayMember = "LongName"
 
        ListBox1.ValueMember = "ShortName"  

Надо попробовать в .ValueMember поставить ключевое поле, может что-то получится.  
 
BlackVetal
DataSet, BindingSource и TableAdapter - все это присутствует и соответствующим образом настроено. Проблема в том, что когда я выполняю (отдельной подпрограммой по клику на кнопке) процедуру удаления, удаляется не та запись, которая отображается в списке.  
 
Буду проверять ваши рекомендации. Отпишусь, что получилось.
 
Добавлено:
получилось. опишу подробно, может кому пригодится.
Имеется таблица я двумя полями.
1. ID с уникальным ключом
2. Profy с названием профессии (или чем угодно)
 
ComboBox привязан к таблице с использованием DataSet, BindingSource и TableAdapter
Устанавливаем свойства ComboBox:
.DisplayMember   выбрать Profy
.ValueMember      выбрать ID
 
В процессе работы список отображает значения из поля  Profy, а ComboBox.SelectedValue дает идентификатор записи в таблице, что мне и нужно было.  
 
Самое интерсное - уже пробовал так сделать, но заработало только сейчас.  
dneprcomp
BlackVetal
Спасибо за помощь. Вопрос закрыт.

Всего записей: 99 | Зарегистр. 29-04-2003 | Отправлено: 08:47 10-09-2009
Meister Floh



Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Господа! Кто может подсказать как сохранить/восстановить все содержимое ImageList в/из blob поля БД (VC# 2008) Заранее благодарен!

Всего записей: 393 | Зарегистр. 04-08-2003 | Отправлено: 13:05 10-09-2009
Omicron_Persey_8



Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Meister Floh
Попробуй это

Всего записей: 282 | Зарегистр. 02-09-2007 | Отправлено: 07:44 11-09-2009
Meister Floh



Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Omicron_Persey_8, большое спасибо, это тоже важный момент, но в этой задаче самым важным является сериализация ImageList.. Возможно ли это потенциально? Ведь взять из имиджлиста все по очереди и сохранить в n-ое количество записей - это не совсем то, что хотелось бы иметь, желательно было бы сохранить весь имиджлист в одну запись...

Всего записей: 393 | Зарегистр. 04-08-2003 | Отправлено: 08:45 11-09-2009
Omicron_Persey_8



Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Meister Floh
Тогда можно попробовать сериализовать в XML при помощи SoapFormatter, свернуть это все в строку или массив байтов и закинуть в БД.
 
Добавлено:
Стоп, отпадает. ImageList не сериализуется. Придется, походу, каждую картинку сохранять по-отдельности.
 
Добавлено:
Еще одна поправка: а вот ImageList.ImageStream уже сериализуется

Всего записей: 282 | Зарегистр. 02-09-2007 | Отправлено: 11:11 11-09-2009
Meister Floh



Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Omicron_Persey_8
ага! я как раз в ту сторону и смотрел, а экзампл накидать не могешь? Не сильно я еще в нете силен, с BCB перепрыгнул...

Всего записей: 393 | Зарегистр. 04-08-2003 | Отправлено: 13:30 11-09-2009
Omicron_Persey_8



Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Meister Floh
Сериализация в массив байтов:

Код:
MemoryStream stream = new MemoryStream();
SoapFormatter sf = new SoapFormatter();
sf.Serialize(stream, imageList1.ImageStream);
byte[] data = stream.GetBuffer();

Как сохранить/прочитать его в/из БД я тебе уже ссылку давал.
Десериализация из массива байтов:

Код:
byte[] data;// ... // Байты из БД
MemoryStream stream = new MemoryStream(data);
SoapFormatter sf = new SoapFormatter();
ImageList deserializedImageList = (ImageList)sf.Deserialize(stream);

Всего записей: 282 | Зарегистр. 02-09-2007 | Отправлено: 15:17 12-09-2009
Meister Floh



Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Omicron_Persey_8, ну прям расцеловать готов!! А то уже собрался орать, что VC# - suxx!! Просто не все так прозрачно, продолжим разбираться

Всего записей: 393 | Зарегистр. 04-08-2003 | Отправлено: 15:54 12-09-2009
blaro



Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
Добрый день товарищи программисты! С праздником вас!
Кто нибудь здесь знает как делать визарды (wizard), то есть такие окошки где есть кнопки "Дальше", "Назад" и "Отменить"?  

Всего записей: 311 | Зарегистр. 29-01-2006 | Отправлено: 12:12 13-09-2009
Omicron_Persey_8



Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
blaro
В конструкторе форм. Или делаешь одну форму с кнопками "Далее" и "Назад" и остальные шаги наследуешь от нее и дописываешь в них контролы. Либо делаешь универсальный класс, который формы на лету тебе будет делать.

Всего записей: 282 | Зарегистр. 02-09-2007 | Отправлено: 18:34 13-09-2009
LuckyStrike



Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
3)Составить программу перевода натурального числа из позиционной системы счисления с основанием m в позиционную систему счисления с основанием n через десятичную систему счисления, где n=3, а m=8  
 
Заранее спасибки!)

Всего записей: 78 | Зарегистр. 10-12-2008 | Отправлено: 22:18 14-09-2009
ppkp

Full Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Делал раньше бегущий график, пользуясь BitBlt(...)
 
Существует ли в C# аналог этого, типа
 
нарисовал что-то
foreach (int index in myList) {
    e.Graphics.DrawLine(myPen, index-1, myList[index-1], index, myList[index]);
} и сдвинул, или только BitBlt для этого ?

Всего записей: 480 | Зарегистр. 13-04-2006 | Отправлено: 22:28 14-09-2009
Omicron_Persey_8



Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
ppkp
Копай в сторону Graphics.TranslateTransform(float, float)
 
LuckyStrike
Пора уже тему создавать про задачи на C#.  

Код:
class Program
    {
        static void Main(string[] args)
        {
            Console.WriteLine(FromDecimal(ToDecimal("100221002")));
            Console.ReadKey();
        }
 
        static long ToDecimal(string number)
        {
            long sum = 0;
            for (int i = number.Length - 1, j = 0; i >= 0; i--, j++)
            {
                sum += long.Parse(number[i].ToString()) * (long)Math.Pow(3.0, j);
            }
            return sum;
        }
 
        static string FromDecimal(long number)
        {
            string result = "";
            while (number > 0)
            {
                result = (number % 8).ToString() + result;
                number /= 8;
            }
            return result;
        }
    }

Всего записей: 282 | Зарегистр. 02-09-2007 | Отправлено: 08:25 15-09-2009
klimusu



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Добрый день.
 
Хочется реализовать на c# кусок кода для web:
 
нужно брать из папки jpg файлы и расставлять их в случайной последовательности.
 
С чего начать?

Всего записей: 931 | Зарегистр. 23-01-2006 | Отправлено: 08:33 15-09-2009
niichavo



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
klimusu
Общая идея такая:
 
1. Создаёшь объект DirInfo, получаешь список файлов (FileInfo) - GetFiles("*.jpg")
2. Создаёшь объект Random r = new Random();
3. На основе длины списка полученных файлов случайно генеришь индекс r.Next(длина_списка)
4. получаешь, используя случайный индекс, имя файла из списка
5. склеиваешь путь с именем файла.

Всего записей: 836 | Зарегистр. 14-09-2005 | Отправлено: 10:55 15-09-2009
klimusu



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
niichavo
Спасибо, пашел кодить.

Всего записей: 931 | Зарегистр. 23-01-2006 | Отправлено: 11:13 15-09-2009
ppkp

Full Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Omicron_Persey_8

Цитата:
Копай в сторону Graphics.TranslateTransform(float, float)

 
спасибо, а как чистить освободившуюся область ?
PS что обычно используют для хранения данных для рисования графика - только список с методм Add или другое ?

Всего записей: 480 | Зарегистр. 13-04-2006 | Отправлено: 14:49 15-09-2009 | Исправлено: ppkp, 17:46 15-09-2009
Omicron_Persey_8



Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
ppkp
А никак не чистить. Все, что в видимую  область не попадает и так рисоваться не будет. Ты когда линию рисуешь она никуда не исчезнет и останется, грубо говоря, в Graphics до тех пор пока его весь цветом фона не зальешь. Так что линии графика для целей рисования даже хранить не надо. Только тогда для графика надо будет отдельный контрол сделать, а то если будешь напрямую на форме рисовать у тебя все содержимое формы сдвинется.

Всего записей: 282 | Зарегистр. 02-09-2007 | Отправлено: 17:57 15-09-2009
Открыть новую тему     Написать ответ в эту тему

Страницы: 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 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162

Компьютерный форум Ru.Board » Компьютеры » Прикладное программирование » Программирование в среде .NET (ASP.NET,ADO.NET) на C#/VB.NET


Реклама на форуме Ru.Board.

Powered by Ikonboard "v2.1.7b" © 2000 Ikonboard.com
Modified by Ru.B0ard
© Ru.B0ard 2000-2024

BitCoin: 1NGG1chHtUvrtEqjeerQCKDMUi6S6CG4iC

Рейтинг.ru