Что такое хорошая сетевая сетка, которая принимает данные из буфера обмена Excel?
Любые хорошие рекомендации для независимого от платформы (например, Javascript) элемента управления / плагина сетки, который будет принимать вставленные данные Excel и может создавать совместимые с Excel данные буфера обмена во время копирования?
Я полагаю, что данные Excel форматируются как CSV во время "обычных" операций с буфером обмена.
dhtmlxGrid выглядит многообещающе, но онлайн-демонстрация на самом деле не копирует содержимое в мой буфер обмена!
5 ответов
В настоящее время я использую dhtmlxGrid, и у нас работает функция копирования / вставки Excel. dhtmlXGrid - наиболее полнофункциональный пакет сетки JavaScript, который я нашел.
На своем веб-сайте dhtmlXGrid утверждает, что поддерживает функциональность буфера обмена в версии Professional. (Однако я заметил, что Образец на их сайте не работает на моем Firefox. РЕДАКТИРОВАТЬ: Это, вероятно, проблема с разрешениями, о которых упоминал Натан.)
В любом случае нам пришлось проделать дополнительную работу, чтобы получить именно ту функцию Excel, которая нам нужна. По сути, нам пришлось переопределить некоторые их функции, чтобы получить желаемое поведение. Их поддержка была очень хороша, помогая нам найти решение.
Таким образом, чтобы ответить на ваш вопрос, вы должны иметь возможность заставить их поддерживать копирование и вставку, если вы покупаете версию Professional. Я просто предупреждаю вас, что может потребоваться дополнительная работа для тонкой настройки этого поведения.
В целом, я доволен dhtmlXGrid. Мы используем много их возможностей. Их поддержка довольно хорошая. Они обычно берут один день, чтобы ответить, так как они в Европе (я думаю). А Javascript по своей природе является открытым исходным кодом, поэтому я всегда могу погрузиться, когда мне это нужно.
Не ответ, а предупреждение: моя компания приобрела элементы управления Infragistics ASP.NET 2007 года только для Grid, и мы сожалеем об этом выборе.
Качество API ужасно (по крайней мере, по нашему мнению), что делает его очень трудным для программирования против сетки (например, несовместимые соглашения об именах, но это просто неудобство, у нас также есть претензии к объектной модели).
Поэтому я не могу сказать, что знаю лучший вариант, я просто знаю, что попробую что-то еще, прежде чем снова платить за продукты Infragistics (и поддержка по электронной почте, которую мы получили, тоже была ужасной).
Я бы не хотел быть Капитаном Очевидным здесь... но как насчет простого старого элемента управления.NET Gridview? Вы можете скопировать данные Excel в него и из него... и запустить его на любой системе с установленной платформой.NET.
Я боролся с этой проблемой несколько лет назад (думаю, 2004 год). Мы столкнулись с проблемой, что Firefox не позволяет сценариям читать буфер обмена по умолчанию (но вы можете предоставить доступ к буферу обмена).
Есть и другие способы чтения данных из буфера обмена... Например, Flash может читать буфер обмена. Есть хорошая статья на ajaxian, чтобы объяснить, как это сделать за кадром.
В конце концов, мы не смогли найти сетевую Grid, которая отвечала бы всем требованиям, поэтому нам пришлось создать свою собственную в смеси Actionscript и Javascript.