Ярославль


  Ответ в темуСоздание новой темыСоздание опроса

C# Работа с Checkedlistbox, сложности с курсовой

Ashka
Дата 16.06.2010 - 19:36
Цитировать сообщение




Unregistered












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

Итак, моя форма выглядит так (разумеется, сама курсовая объемней, чтобы не грузить подробностями - выделила проблему тут)

user posted image

Два текстбокса, один отвечает за "имя объекта", второй за "содержание".

При нажатии на кнопку "Save" создает объект, собирает в него все "свойства", и даже выдает при выделении - в Labels

Одна сложность: хочу чтобы сам ЧекЛистБокс содержал сами объекты, а не только их имена, поэтому когда дополняю объект - в checkedlistbox появляется "место под галочку" и пустота...

Так выглядит код:

Цитата
namespace Obj
{
    public partial class FrmObject : Form
    {
        public FrmObject()
        {
            InitializeComponent();
        }

        class MyObject : Control
        {
            private string name;

            public string Name1
            {
                get { return name; }
                set { name = value; }
            }

            private string j;

            public string J
            {
                get { return j; }
                set { j = value; }
            }
        }
       
        private void button1_Click(object sender, EventArgs e)
        {
            MyObject obj = new MyObject();

            obj.Name1 = textBox1.Text;
            obj.J = textBox2.Text;

            checkedListBox1.Items.Add(obj);
        }

        private void checkedListBox1_SelectedIndexChanged(object sender, EventArgs e)
        {
            Type p = checkedListBox1.SelectedItem.GetType();
            label1.Text = p.ToString();

            MyObject obj= (MyObject)checkedListBox1.SelectedItem;

            label2.Text = obj.Name1;
            label3.Text = obj.J;
        }
    }
}


Буду благодарна, если подскажете, где ж я что перемудрила... smile.gif
Top
Rebe
Дата 16.06.2010 - 21:11
Цитировать сообщение




Unregistered












C# от меня достаточно делёк, но возможно

Код
checkedListBox1.DisplayMember = "Name1"


Либо добавить метод toString к вашему объекту. Но, опять-таки, я от C# далёк.

Это сообщение отредактировал Rebe - 16.06.2010 - 21:13
Top
Ashka
Дата 16.06.2010 - 21:58
Цитировать сообщение




Unregistered












DisplayMember к Чеклистбоксу не лепится... его, похоже, другим способом прикручивать надо...

Про "toString()" я уже думала... крутила-вертела...

Пока написала вот так:

public override string ToString()
{
return name;
}


и убрала :Control (он, откровенно, был методом "тыка", т.к. в курсовой есть зависимость от UserControl). В этом случае - он не требуется.

Спасибо за отклик! smile.gif
Top
Rebe
Дата 16.06.2010 - 22:30
Цитировать сообщение




Unregistered












DisplayMember я взял отсюда

http://msdn.microsoft.com/en-us/library/sy...ber(VS.90).aspx

Это сообщение отредактировал Rebe - 16.06.2010 - 22:30
Top
Ashka
Дата 16.06.2010 - 22:35
Цитировать сообщение




Unregistered












как пользоваться "помощью" я уже научилась, спасибо biggrin.gif
Top
Tihiy89
Дата 18.06.2010 - 00:20
Цитировать сообщение




В малиновых штанах
*****

Профиль
Группа: Пользователи
Сообщений: 2017
Пользователь №: 29916
Регистрация: 26.03.2008 - 18:08





брррр...
как понимаю проблема такая:
Цитата
хочу чтобы сам ЧекЛистБокс содержал сами объекты, а не только их имена

если не ошибаюсь то к каждому элементу ЧекЛистБокса можно прикреплять объект стандартными средствами
если нельзя - пишем свой класс, наследующий все свойства ЧекЛистБокса и добавляем что нам надо (надо нам если что добавить возможность хранить объекты количеством не меньшим чем элементов в чекистбоксе и работать с ними)

а нафиг кстати вообще это все ?
PMПисьмо на e-mail пользователю
Top
Ashka
Дата 18.06.2010 - 00:39
Цитировать сообщение




Unregistered












действительно, отделила "мух от варенья" - написала специально класс для объекта без каких-либо наследований, и тем самым решила проблему!

Курсовая у меня такая)) Еще будут сложности, обращусь!

Спасибо за участие!)) smile.gif
Top

Опции темы Ответ в темуСоздание новой темыСоздание опроса

 



[ Время генерации скрипта: 0.0123 ]   [ Использовано запросов: 16 ]   [ GZIP включён ]



Яндекс.Метрика

Правила Ярпортала (включая политику обработки персональных данных)

Все вопросы: yaroslavl@bk.ru