Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
WPF + CustomControl + TextBox
|
|||
|---|---|---|---|
|
#18+
arrtИ еще одна возможная проблема это компиляция моего юзерконтрола в dll и потом его возможное использование как обычного компонента. Все прежние работы с wpf я делал с помощью написание xаml разметки, и не вижу у себя тулбокса даже в VS. И после просмотра этой инструкции https://social.msdn.microsoft.com/Forums/en-US/900e1968-d9e5-4d29-a902-50195ed8f4fa/how-to-create-a-dll-from-a-wpf-usercontrol понимаю что многих тамошних компонентов нету в моем wpf solution explorer. хз, кто то вообще пользуется ToolBox'ом в WPF? я нет, думаю его по умолчанию и нет, потому, что он бесполезен. Отвечать в эту тему больше не буду до тех пор, пока вы не откроете и не почитаете. Ну, а если не откроете и не прочитает, думаю долго вы тут не просидите :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.04.2018, 21:45 |
|
||
|
WPF + CustomControl + TextBox
|
|||
|---|---|---|---|
|
#18+
Здесь еще одна проблемка появилась, и то достаточно серьезная. Проблема в том что кроме биндинга значений надо - биндить список координат к Polyline Points (PointCollection). Потому есть необходимость конвертера List<double> (х1,y1,x2,y2, x3,y3) в PointCollection (List<Point>), с приспособлением к параметрам графика. Дополнительная трудность - что конвертер надо определять к внутреннему элементу главного окна - то есть к самому контролу. Вот код конвертера что основан на работающем коде, что вызывает NullPointerexception к инициализатору цыкла - for (i=0; i<coord.count ... Код: c# 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. ... <UserControl Name="UCon" <UserControl.Resources> <local:Konverter x:Key="PointConverter"/> </UserControl.Resources> ...<Polyline Name="polyline" Points="{Binding Path=Data, ElementName=UCon, Converter={StaticResource PointConverter}}" /> Другой способ отображение изменений линии (координат) это реализация Callback PropertyChanges (DO, args) для UCon Data DP - но в теле метода нету доступа к другим свойствам UserControlclass таким как polyline потому отобразить изменение при изменение внешне-зависимого свойства координат невозможно. Надо создавать другой инстанс UserControlclass, которым не будет никак связан с первым обьектом юзерконтрола. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.04.2018, 03:11 |
|
||
|
WPF + CustomControl + TextBox
|
|||
|---|---|---|---|
|
#18+
arrtЗдесь еще одна проблемка появилась, и то достаточно серьезная. Проблема в том что кроме биндинга значений надо - биндить список координат к Polyline Points (PointCollection).ну, если месяц решаете вопрос, то пробуйте пойти в другую сторону. Сколько строк уже у вас на сегодня? Дайте скрин из сети что вы хотите получить в итоге? Не нобелевка же у вас. Если так трудно, то убирайте биндинг. Рисуйте график с координатными линиями на одном компонентк Холст. По MVVC у вас в вью будет 10 строк и клас с методом График.Нарисуйся(.... Удачи! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.04.2018, 08:32 |
|
||
|
WPF + CustomControl + TextBox
|
|||
|---|---|---|---|
|
#18+
arrtДругой способ отображение изменений линии (координат) это реализация Callback PropertyChanges (DO Ещё линии можно рисовать пером по пикселям. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.04.2018, 08:35 |
|
||
|
WPF + CustomControl + TextBox
|
|||
|---|---|---|---|
|
#18+
Petro123MVVCMVVM) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.04.2018, 08:38 |
|
||
|
WPF + CustomControl + TextBox
|
|||
|---|---|---|---|
|
#18+
имхо, но конвертить надо в Geometry, а Gemotry уже биндить. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.04.2018, 12:14 |
|
||
|
WPF + CustomControl + TextBox
|
|||
|---|---|---|---|
|
#18+
Roman Mejtesимхо, но конвертить надо в Geometry, а Gemotry уже биндить.смотря что конвертить? Картину художника на Canvas? Это невозможно. Ну и автора тогда уволят за медлителность. Про биндинг, как будто wpf не существует без биндинга. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.04.2018, 13:14 |
|
||
|
WPF + CustomControl + TextBox
|
|||
|---|---|---|---|
|
#18+
с точки зрения сериализации и хранения, конвертации и прочего, лучше использовать Geometry. Отображать в Canvas в виде Path элементов. Сами координаты могут быть Начиная от потока, заканчивая простой строкой. Геометрии можно комбинировать и группировать и производить трансформации. Вообще svg, ai форматы легко портируются в XAML разметку. Дизайнер делает картинку. еще очень удобно использовать Shape'ы. Обычно векторная графика используется для создания сложных по составу элементов управления, типа графы, графики, карты д.р. В остальных случаях можно всегда обойтись готовым набором шейпов, на скорую руку закинутый PathGeometry для отображения векторной иконки и рисованием линий, прямоугольников и прочей ереси, что мы делает каждый день. https://drive.google.com/file/d/1xSj28uRBmxmGjjf7gkvDAweDWlph5ZXH/view?usp=sharing вот примерчик, давно валяется, может поможет чем, чтоб разобраться как работать с векторной графикой, сложного типа. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.04.2018, 14:30 |
|
||
|
WPF + CustomControl + TextBox
|
|||
|---|---|---|---|
|
#18+
Roman Mejtes, Да. Тут надо смотреть кто с чем умеет работать, и от задачи (привет автору что до сих пор скрина нету). У меня лично проекты ГИС были, где рисовалось на канве. А также на HDC хоть принтера. Руками с WinAPI. Я точно вижу что с биндингом автор закопался. А с MVVM без биндинга он уйдет работать))))) Т.к. класс рисования будет отдельно от вью. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.04.2018, 14:47 |
|
||
|
WPF + CustomControl + TextBox
|
|||
|---|---|---|---|
|
#18+
Ну и вы строптивые - скрин уже как неделю есть. И полтысячи строк в класе. Мне этого уже может и не надо. Но чтобы не доделать переключение между разными линиями... В моем последнем коде все кажется ясно как белый день - но object value - null. Пусть это значение DP ( List<double> или List<Point>). То есть входной параметр в конвертер null - но сама DP - DATA.COUNT >100 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.04.2018, 18:46 |
|
||
|
WPF + CustomControl + TextBox
|
|||
|---|---|---|---|
|
#18+
arrtНу и вы строптивыеты тоже не подарок). arrtскрин уже как неделю есть Где? arrtполтысячи строк Хорошо хоть не много....и время у тебя есть. А биндинг то тебе зачем, если не выходит или студия у тебя кривая. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.04.2018, 19:10 |
|
||
|
WPF + CustomControl + TextBox
|
|||
|---|---|---|---|
|
#18+
У меня вопрос был. И код приведен. Вот выдержки из подобного вопроса - сайт не буду привожить. 1)"But when I debug the function Convert I see that the first argument named "value" always gets null." 2) "If value is null, then it's a problem with the binding, not with the converter." 3) "No build error. But at run time my (IValueConverter).Convert method gets passed value=null" Object Value - кажется должен принимать любые типы - то есть причина в моем случае не в типе, хотя я передаю параметризированый список - List<T> ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.04.2018, 01:32 |
|
||
|
WPF + CustomControl + TextBox
|
|||
|---|---|---|---|
|
#18+
Возвращаясь к теме хотелось бы узнать что значит конкретно такой код: textblock.Measure(new Size(Double.PositiveInfinity, Double.PositiveInfinity)); Size size=textblock.DesiredSize; Что значит Measure с такими параметрами размеров - Double.PositiveInfinity. Это значит что вложенный компонент текстового блока может расширятся к максимально предельным возможным размерам?? Или какая идея применение такой конструкции - лиш определить уже существующие размеры? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.06.2018, 01:07 |
|
||
|
WPF + CustomControl + TextBox
|
|||
|---|---|---|---|
|
#18+
arrt, если элемент находится в ScrollViewer'е, или панели StackPanel или любой другой панели или элементе управления у которого нет "границ" для содержимого, то его размеры будут PositiveInfinity. У StackPanel соответственно в том направлении, в котором располагается стопка. В ScrollViewer'е в зависимости от того какая прокрутка доступна. Если Ширина или Высота бесконечна, обычно размер элемента управления вычисляется исходя из его содержимого, либо заданного размера. Size size=textblock.DesiredSize DesiredSize - это предполагаемый размер элемента управления, который задается ему на этапе Measure, на этапе Arrage этот размер берется как предполагаемый и элемент размещается внутри другого в зависимости от его компоновки. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.06.2018, 01:38 |
|
||
|
WPF + CustomControl + TextBox
|
|||
|---|---|---|---|
|
#18+
Так Measure - это измерение уже существующего размера или его установление? Если второе - тогда почему текстовый блок не занимает максимально возможный размер, если это лиш способ измерить - почему просто не использовать какое то гипотетическое свойство tb.size/desired size? Что если не употреблять DoubleInfinity, a например 0 или его приблизительную длину или ширину? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.06.2018, 11:15 |
|
||
|
WPF + CustomControl + TextBox
|
|||
|---|---|---|---|
|
#18+
Непросто читать. Вначале понятно что сама система wpf определяет размеры, и не всегда они могут быть желаемыми. И в конце написано если есть баттон на 50*50 - и поместить в грид размеры которой меньше, то кнопка будет обрезана - но в конце концов все будет выглядеть как надо? То есть я понял если Size.DoubleInfinity то этот компонент займет все пространство элемента обертки, если не будет других элементов в этой ячейче, а если будет то непонятно какой будет результат, как элементы-потомки будут определять нужные им размеры с помощью рекурсии. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.06.2018, 18:46 |
|
||
|
|

start [/forum/topic.php?fid=21&msg=39636678&tid=1440415]: |
0ms |
get settings: |
10ms |
get forum list: |
15ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
58ms |
get topic data: |
9ms |
get forum data: |
2ms |
get page messages: |
63ms |
get tp. blocked users: |
1ms |
| others: | 17ms |
| total: | 181ms |

| 0 / 0 |
