Перетаскивание из Windows File Explorer на Windows Form не работает

Вы можете использовать lodash для создания массива элементов, разбитых на группы по длине. _.chunk (массив, [размер = 1])

или используйте

let arr = [1,2,3,4,5,6,7,8];
let chunk_size = 3; //no. of elements you want to print in single row
let chunkArray = arr.map(function(e, i) {
return i % chunk_size === 0 ? arr.slice(i, i + chunk_size) : null;
})
.filter(function(e) {
return e;
});


<div class="row" *ngFor="let data of chunkArray ">
<div class ="col-md-4" *ngFor="let item of data">
{{item.name}}
</div>
</div>
8
задан Matt Hamilton 11 December 2008 в 22:46
поделиться

3 ответа

Проблема возникает из контроля учётных записей Vista. DevStudio работает как администратор, но проводник работает как обычный пользователь. Когда Вы перетаскиваете файл из проводника и отбрасываете его на Вашем приложении хоста DevStudio, которое совпадает с непривилегированным пользователем, пытающимся общаться с привилегированным пользователем. Это не позволяется.

Это, вероятно, не обнаружится, когда Вы запустите приложение за пределами отладчика. Если Вы не выполняете его как администратор туда (или если автоматические обнаружения Vista, что это - установщик/приложение установки).

Вы могли также запустить проводник как администратор, по крайней мере, для тестирования. Или отключите контроль учётных записей (который я не рекомендовал бы, так как Вы действительно хотите поймать эти проблемы во время разработки, не во время развертывания!)

20
ответ дан 5 December 2019 в 08:26
поделиться

Код, который Вы отправили, должен работать.

Попытайтесь поместить это в начале метода DragEnter

string formats = string.Join( "\n", e.Data.GetFormats(false) );
MessageBox.Show( formats );

который выведет форматы данных, связанные с d'n'd операцией. Мог бы помочь нам сужение, где проблема заключается.

0
ответ дан 5 December 2019 в 08:26
поделиться

Я добавил код, что упомянутый arul и вещи все еще не работал, но это получило меня взгляды.

Я начал думать, что это могла бы быть проблема Vista, таким образом, я отправил его другу, которому работали отлично Windows XP и это! Я затем пытался выполнить его за пределами папки Release в каталоге bin и что делает Вы знаете, что это работало!

Единственное время это не работает, - когда я выполняю его в IDE Visual Studio 2008... это просто странно.

0
ответ дан 5 December 2019 в 08:26
поделиться
Другие вопросы по тегам:

Похожие вопросы: