Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > .NET Frameworks (точка нет фреймворки) > C# (си шарп)
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 15.03.2015, 22:43   #11
Alex11223
Старожил
 
Аватар для Alex11223
 
Регистрация: 12.01.2011
Сообщений: 19,500
По умолчанию

Дык var это не из его исходников.

Не думаю однако что возникнут какие-то проблемы при апгрейде с 2005 на новые версии VS, стоит попробовать.
Ушел с форума, https://www.programmersforum.rocks, alex.pantec@gmail.com, https://github.com/AlexP11223
ЛС отключены Аларом.
Alex11223 вне форума Ответить с цитированием
Старый 16.03.2015, 08:58   #12
Regressor
Пользователь
 
Регистрация: 15.02.2015
Сообщений: 36
По умолчанию

Попробую сегодня обязательно. На другом компе поставлю VS2008 и попробую.
Regressor вне форума Ответить с цитированием
Старый 16.03.2015, 14:49   #13
Regressor
Пользователь
 
Регистрация: 15.02.2015
Сообщений: 36
По умолчанию

Увы, не получилось, там возникло множество проблем с библиотеками скомпилированными специально под эту софтину в прежней версии VS.
Хотел попробовать вместо ListView применить DataGridView, но не нашел у него коллекцию Item, видимо тоже в более поздних версиях VS появилось. Блин, все время не хватает чего то )))
Regressor вне форума Ответить с цитированием
Старый 16.03.2015, 14:57   #14
Alex11223
Старожил
 
Аватар для Alex11223
 
Регистрация: 12.01.2011
Сообщений: 19,500
По умолчанию

У DataGridView Rows вместо Items.

Что за библиотеки? Не должно быть у .NET библиотек (тем более если собранных, а не в виде исходников) таких зависимостей от версии VS, только от самого .NET, и то обычно совместимо с более новыми версиями.
Ушел с форума, https://www.programmersforum.rocks, alex.pantec@gmail.com, https://github.com/AlexP11223
ЛС отключены Аларом.
Alex11223 вне форума Ответить с цитированием
Старый 17.03.2015, 17:41   #15
Regressor
Пользователь
 
Регистрация: 15.02.2015
Сообщений: 36
По умолчанию

Сторонние DLL, для обработки потоковых данных.
Впрочем, таки получилось перенести на VS2008! Работает в среде WinXP без проблем, спасибо!
Буду сейчас разбираться с кодом редактирования listView, он у меня почему то не работает, при кликах по ячейкам ничего не происходит.

Последний раз редактировалось Regressor; 17.03.2015 в 17:52.
Regressor вне форума Ответить с цитированием
Старый 17.03.2015, 17:47   #16
Alex11223
Старожил
 
Аватар для Alex11223
 
Регистрация: 12.01.2011
Сообщений: 19,500
По умолчанию

Видимо вы как-то добавили его 2 раза. Ванговать без кода из E:\Tmpp\SPK\Gui\MainForm.cs сложно.
Ушел с форума, https://www.programmersforum.rocks, alex.pantec@gmail.com, https://github.com/AlexP11223
ЛС отключены Аларом.
Alex11223 вне форума Ответить с цитированием
Старый 17.03.2015, 18:26   #17
Regressor
Пользователь
 
Регистрация: 15.02.2015
Сообщений: 36
По умолчанию

Я действительно его два раза добавил, еще в прежнем компе, где стоит VS2005 и на этом, разобрался, удалил ненужный дубль, ошибки пропали.
Но работать таки не хочет - ошибок не выдает, но и не редактирует listView. Весь код из MainForm приводить нет смысла, он слишком объемный, да и собственно наверное бессмысленно. А то что вставил:

Код:
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using System.Collections.ObjectModel;
using System.Windows.Forms.Design;
using Sipek.Common;
using Sipek.Common.CallControl;


namespace SPK
{
  public partial class MainForm : Form
  {

    #region Properties

    private Timer tmr = new Timer();  // Refresh Call List
    private EUserStatus _lastUserStatus = EUserStatus.AVAILABLE;
    private string HEADER_TEXT;

    private SPKResources _resources = null;
    private SPKResources SPKResources
    {
      get { return _resources; }
    }

    public bool IsInitialized
    {
      get { return SPKResources.StackProxy.IsInitialized; }
    }
    
    #endregion

    public MainForm()
    {
      InitializeComponent();

     private void listViewCallRegister_MouseDown(object sender, MouseEventArgs e)
    {
        if (e.Clicks > 1)
        {
            TextBox tbox = new TextBox();
            this.Controls.Add(tbox);
            tbox.Width = listViewCallRegister.Columns[3].Width;
            ListViewItem item = listViewCallRegister.GetItemAt(0, e.Y);
            if (item != null)
            {
                int x_cord = 0;
                for (int i = 0; i < listViewCallRegister.Columns.Count - 1; i++)
                    x_cord += listViewCallRegister.Columns[i].Width;
                tbox.Left = x_cord;
                tbox.Top = item.Position.Y;
                tbox.Text = item.SubItems[3].Text;
                tbox.Leave += DisposeTextBox;
                tbox.KeyPress += TextBoxKeyPress;
                listViewCallRegister.Controls.Add(tbox);
                tbox.Focus();
                tbox.Select(tbox.Text.Length, 1);
            }
        }
    }
    private void DisposeTextBox(object sender, EventArgs e)
    {
        var tb = (sender as TextBox);
        var item = listViewCallRegister.GetItemAt(0, tb.Top + 1);
        if (item != null)
            item.SubItems[3].Text = tb.Text;
        tb.Dispose();
    }
    private void TextBoxKeyPress(object sender, KeyPressEventArgs e)
    {
        if (e.KeyChar == 13)
            DisposeTextBox((sender as TextBox), null);
        if (e.KeyChar == 27)
            (sender as TextBox).Dispose();
    }
//-------------------------------------------
  }
}
Кстати, есть разница куда именно его вставлять - в начало, конец, или без разницы? И еще, может что=то в свойствах самого контрола listView нужно выставить?
Regressor вне форума Ответить с цитированием
Старый 17.03.2015, 18:33   #18
Alex11223
Старожил
 
Аватар для Alex11223
 
Регистрация: 12.01.2011
Сообщений: 19,500
По умолчанию

Видимо на эти события вы его не подписали.
В дизайнере формы раздел Events, там, где свойства выбранного объекта. Как в дельфи.
Либо
Код:
myListView.MouseDown += listViewCallRegister_MouseDown;
например после
Код:
InitializeComponent();
Ушел с форума, https://www.programmersforum.rocks, alex.pantec@gmail.com, https://github.com/AlexP11223
ЛС отключены Аларом.

Последний раз редактировалось Alex11223; 17.03.2015 в 18:36.
Alex11223 вне форума Ответить с цитированием
Старый 17.03.2015, 18:52   #19
Regressor
Пользователь
 
Регистрация: 15.02.2015
Сообщений: 36
По умолчанию

Вы как в воду глядели ))) Я как раз в "Событиях" объекта нашел в комбобоксе "MouseDown," listViewCallRegister добавил, но все равно, не работает. Потом прочитал ваш комментарий, добавил и код, но все равно не работает. Я так понимаю, должна открываться форма с TextBox?

Да, еще момент, listView в родительском контейнере, это не влияет?

Последний раз редактировалось Regressor; 17.03.2015 в 19:02.
Regressor вне форума Ответить с цитированием
Старый 17.03.2015, 19:18   #20
Alex11223
Старожил
 
Аватар для Alex11223
 
Регистрация: 12.01.2011
Сообщений: 19,500
По умолчанию

Ну определяйте что именно не работает.

Могу лишь посоветовать воспользоваться отладчиком
http://msdn.microsoft.com/en-us/library/y740d9d3.aspx
http://www.codeproject.com/Articles/...tudio-A-Beginn
http://www.dotnetperls.com/debugging

Для начала стоит поставить breakpoint туда и посмотреть срабатывает ли оно вообще.
Ушел с форума, https://www.programmersforum.rocks, alex.pantec@gmail.com, https://github.com/AlexP11223
ЛС отключены Аларом.
Alex11223 вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
удаление нужной строки и стобца в stringgrid Abay19941308 Компоненты Delphi 5 10.11.2013 18:22
ListView редактирование второй колонки LomoCoder Общие вопросы Delphi 4 29.07.2013 00:42
Редактирование SubItems у ListView как у TListItem.Caption Человек_Борща Компоненты Delphi 6 10.01.2013 03:21
Сделать ширину стобца DBGrid равное ширине названия стобца Dozent Общие вопросы Delphi 3 23.05.2012 10:51
Редактирование при двойном клике по столбцу в ListView MasterofCDM Компоненты Delphi 3 18.11.2010 16:07