1

голосов
1

ответ
88

Просмотры

Пользовательский объект обзорного с Unity

Очень простой вопрос здесь, но я изо всех сил, чтобы найти любую информацию о нем. У меня есть очень простой родитель / потомок иерархия ... класс Parent общественности: IParent {[Dependency] общественный IChild Ребенок {получить; задавать; }} Дитя общественного класса: IChild {[Dependency] общественный IParent Родитель {получить; задавать; }} ... и мои регистрации контейнерные именно то, что можно было ожидать: this.Container.RegisterType (); this.Container.RegisterType (); Когда контейнер создает родительский экземпляр автоматически создает и внедряет новый экземпляр ребенка, но как я могу вводить родительскую ссылку в этот ребенок? В основном я пытаюсь найти Единения эквивалента метода InScope Ninject в.
Mark Feldman
1

голосов
1

ответ
149

Просмотры

WPF оживляющий RenderTransform с DataTrigger

У меня возникли трудности оживляющих визуализаций преобразования объекта Canvas с помощью триггера данных. В качестве тестового примера у меня есть эллипс на холсте вместе с двумя кнопками. При нажатии каждой кнопки я хочу, чтобы положение эллипса анимированного X этой кнопки координаты: То, что я с помощью кнопок в данном конкретном примере ни здесь-нор-то, дело в том, что я пытаюсь вызвать эти анимации с DataTrigger привязанные к свойству на мой взгляд, модель: // это свойство моей DataTrigger будет связываться с частной строки _Anim; публичная строка Anim {получить {вернуться this._Anim; } Множество {this._Anim = значение; RaisePropertyChanged (() => this.Anim); }} // обработчика команд для кнопок, которая устанавливает свое анимационное свойство общественного ICommand AnimCommand {получить {возвратить новый RelayCommand (OnAnim); }} Частная пустота OnAnim (значение строки) {this.Anim = String.Empty; // отменить любую существующую анимацию, вероятно, не требуется ... this.Anim = значение; } Вот Xaml я использую, чтобы сделать это. Это в основном только холст, содержащий эллипс и две кнопки, и эллипс имеет 2 раскадровки, которые получают срабатывают в ответ на свойства бэкэнда быть настроена на разные строки (то есть «левые» и «правые»): и поведение правильно оба раза. Однако, нажав на них в обратном порядке не работает ... кнопки «правильной» оживляет правильно и кнопка «влево» ничего не делает. Это как если бы «право» анимация все еще работает или блокировка собственности или что-то, дело дальше подкреплено тем, что обратная ситуация, если я поменять порядок деклараций раскадровки в XAML. Это прекрасно работает с Eventtriggers, я только видел его с DataTriggers. Я также пытался играть с FillBehaviours и HandoffBehaviors, но безрезультатно. Может кто-то пожалуйста, объясните, почему это происходит и как это исправить? как если бы «право» анимация все еще работает или блокировка собственности или что-то, дело дальше подкреплено тем, что обратная ситуация, если я поменять порядок деклараций раскадровки в XAML. Это прекрасно работает с Eventtriggers, я только видел его с DataTriggers. Я также пытался играть с FillBehaviours и HandoffBehaviors, но безрезультатно. Может кто-то пожалуйста, объясните, почему это происходит и как это исправить? как если бы «право» анимация все еще работает или блокировка собственности или что-то, дело дальше подкреплено тем, что обратная ситуация, если я поменять порядок деклараций раскадровки в XAML. Это прекрасно работает с Eventtriggers, я только видел его с DataTriggers. Я также пытался играть с FillBehaviours и HandoffBehaviors, но безрезультатно. Может кто-то пожалуйста, объясните, почему это происходит и как это исправить?
Mark Feldman
1

голосов
1

ответ
61

Просмотры

Группировка неохоты регулярных выражений с помощью LINQ

Я использую следующую команду LINQ, чтобы извлечь список брекет-разделители параметров из строки, используя неохоту регулярного выражения: результат переменного = Regex.Matches ( «Foo [A] [B] [сссс] бар», @ "( [.? +] \) ") .Cast () .Select (матч => match.ToString ()) .ToArray (); Это возвращает следующий массив строк, как и ожидалось: - результат {строка [3]} Строка [] [0] "[а]" строка [1] "[Ь]" строка [2] "[сссс]" строка Есть способ изменить саму регулярное выражение, так что скобки не включены в выходные? Я попытался Помещая. + Часть выражения внутри имени группы, но он сломал соответствие. Очевидно, что я мог бы работать каждый результат с помощью другого регулярного выражения, чтобы удалить скобки, но я хотел бы узнать, есть ли очиститель / лучший способ сделать это.
Mark Feldman
2

голосов
2

ответ
331

Просмотры

Странное поведение C ++ с участием нескольких вызовов деструктора

Я бегу следующий код в Dev Studio 2010: STRUCT Foo {Foo () {соиЬ
Mark Feldman
2

голосов
1

ответ
1.6k

Просмотры

Закрытие / перезапуск Деятельность в TabHost

Я разработка Android 2.3.3 приложения, которое состоит из TabActivity верхнего уровня. Я также добавить несколько вкладок в TabHost и программно давая каждому из них отдельный ребенок активность: пристальный = новый Intent () setClass (это, MyFirstActivity.class);. спецификация = tabHost.newTabSpec (...) setIndicator (...) setContent (намерение)..; tabHost.addTab (спецификация); Намерение = новое Намерение () setClass (это, MySecondActivity.class). спецификация = tabHost.newTabSpec (...) setIndicator (...) setContent (намерение)..; tabHost.addTab (спецификация); Событие происходит в другом месте в моем приложении, и в ответ я хочу, чтобы воссоздать все вкладки деятельности. Для этого я звоню getTabHost (). ClearAllTabs (), и хотя он удаляет их из вкладки не кажется, на самом деле убить активность. Если я снова запустить приведенные выше коды существующих мероприятия просто добавили в свои закладки и они продолжают работать, как и раньше. Есть ли флаг или что-то мне нужно, чтобы установить, когда я создаю намерение, так что они получают правильно закрыли и создали еще раз? Кроме того, есть ли другой способ для ребенка деятельности, чтобы узнать, когда они удаляются из родительского TabActivity?
Mark Feldman
7

голосов
1

ответ
247

Просмотры

Есть ли Fluent конвенции перерыв отложенной загрузки? (UNhAddIns)

У меня есть простой класс сущностей в приложении WPF, который по существу выглядит следующим образом: общественный класс Клиент: MyBaseEntityClass {частные IList _Orders; государственные заказы виртуальные IList {получить {возвращение this._Orders; } Множество {this._Orders = новый ObservableCollection (значение);}}} Я также использую Fluent automapper в автономной утилите для создания конфигурационного файла NHibernate, который затем загружается во время выполнения. Это все работает отлично, но есть очевидный удар по производительности из-за того, что я не проходя оригинальную коллекцию обратно в NHibernate, так что я пытаюсь добавить конвенцию, чтобы получить NHibernate, чтобы создать коллекцию для меня: класс ObservableListConvention общественности: ICollectionConvention {общественного недействительными Применить (ICollectionInstance экземпляр) {Тип collectionType = TypeOf (uNhAddIns.WPF. Collections.Types.ObservableListType) .MakeGenericType (instance.ChildType); instance.CollectionType (collectionType); }} Как вы можете видеть, я использую одну из коллекций uNhAddIns, которые я понимаю, предполагаюсь обеспечить поддержку как конвенции и изменения INotification, но по какой-то причине, делая это, кажется, сломать ленивую загрузку. Если я загружаю пользовательскую запись, как это ... вар результат = this.Session.Get (ID); ... то поле Заказы действительно получить присваивается экземпляр типа PersistentObservableGenericList, но его EntityId и EntityName поля равны нулю, и попытки расширить результаты заказов в страшном «незаконный доступ к загрузке коллекции» сообщения. Может кто-нибудь сказать мне, что я м делает неправильно и / или то, что мне нужно сделать, чтобы получить эту работу? Я правильно при условии, что исходный прокси-объект (который обычно содержит идентификатор клиента, необходимый для отложенной загрузки элемента Orders) заменяется сборного пункта uNhAddIns, который не отслеживает нужный объект? UPDATE: Я создал тестовый проект, демонстрирующий эту проблему, он не ссылается на проект uNhAddins напрямую, а классы коллекций, которые были добавлены вручную. Это должно быть довольно просто, как это работает, но в основном это создает базу данных из домена, добавляет запись со списком ребенка, а затем пытается загрузить его обратно в другую сессию, используя класс коллекции как осуществление для списка детей. Утверждают, брошено из-за отложенной загрузки терпит неудачу.
Mark Feldman
3

голосов
1

ответ
872

Просмотры

WPF: Получить DataTemplate элемент из контекста данных объекта

У меня довольно сложное дерево данных, которые я отображающий в WPF UserControl и управление с помощью DataTemplates создать и связать различные элементы пользовательского интерфейса до различных данных внутри дерева. Вот (очень) упрощенный пример, который включает в себя список элементов, находящихся отображение на ItemsControl сидит на холсте, и каждый элемент представлен с TextBox: Теперь это событие произошло в моем UserControl в результате чего у меня есть ссылка на один из списка предметы, и я хочу, чтобы установить фокус на TextBox пункта позади него. Есть простой способ получить TextBox элемент из объекта данных, его контекст данных привязываются к? Или мне придется вручную ходить по Целому Визуальному дереву самому? Я понимаю, что я мог бы поставить элемент внутри элемента данных сама по себе и использовать триггеры, чтобы сделать то, что это я»
Mark Feldman
2

голосов
0

ответ
76

Просмотры

Преобразование VHDL логических векторов определяемого пользователя строки для моделирования

Я использую Active-HDL для имитации моей конструкции FPGA, и я хотел бы знать, если это возможно, чтобы использовать динамически генерируемые строки для представления моих сигналов в тренажере. Например, предположим, что у меня есть 4-битный std_logic_vector, содержащий операционный код, я хотел бы имитатор для отображения строки оп-кода «NOP», «добавить», «суб» и т.д. вместо значения вектора. Я попытался объявить собственный тип перечисления на первом, но быстро обнаружил, что вы не можете выбирать значения отдельных элементов. Мой следующий раствор использовать для перечисления только для моделирования отображения и преобразования с функцией перевода: Тип op_code_type является (NOP, добавить, к югу, неизвестно); - не в порядке сигнала op_code_str: op_code_type; Сигнал op_code: STD_LOGIC_VECTOR (3 Downto 0); Функция to_string (op_code: STD_LOGIC_VECTOR (3 Downto 0)) возвращение op_code_type является случай op_code начинают, когда "0000" => возвращение NOP; когда "0010" => возврат добавить; когда "0011" => возвращение к югу; когда другие => вернуться неизвестно; конец дела; конец to_string; начать ----- ----- процесс испытательный стенд начать op_code
Mark Feldman
4

голосов
2

ответ
2.2k

Просмотры

Как MOq методы расширения NHibernate?

Я занимаюсь разработкой приложения с помощью NHibernate для ОРМ, NUnit для модульного тестирования и Ninject для моего DI. Я насмешливый ISession как так: вар сессии = новый Mock (); С регулярными, не издевались объектами сеанса я могу запросить их с помощью методов расширения LINQ, как это: результат вара = Session.Query (); Но когда я пытаюсь дразнить это с помощью следующего кода ... session.Setup (s => s.Query ()); ... Я получаю исполняемая «Не поддерживается» исключение: Expression ссылается на метод, который не принадлежит к издевались объекта: s => s.Query () Как я могу издеваться основные запросы, как это в MOq / NHibernate?
Mark Feldman
5

голосов
2

ответ
1.1k

Просмотры

WPF: Как запустить GUI поведение в ответ на представление-модель событий?

Я занимаюсь разработкой приложений WPF / MVVM и у меня есть ListBox связывание с данными в ViewModel. В различных точках мне нужна модель представления, чтобы вызвать окно списка для перехода к данному элементу. Как я могу сделать это без создания таможенного контроля и в то же время сохраняя хорошее разделение проблем? В настоящее время я получил это работает, создав пользовательский класс поведения в вид слоя со свойством VisibleIndex зависимостей, которые код XAML затем связывается с целым числом в модели представления: Когда число установлено, что вызывает свойства зависимостей обновить обработчик, который говорит в окне списка для прокрутки к соответствующему индексу. Это кажется немного Hacky, хотя, потому что значение свойства зависимостей никогда не изменяется в окне списка и обработчик обновления только вызывается при изменении значения, так что единственный способ гарантировать, что элемент Релевент видно, чтобы сделать что-то вроде этого: // вид-код модели this.VisibleIndex = -1; this.VisibleIndex = 10; Единственная причина, почему я использую класс поведения на данный момент для связывания моего пользовательского свойства зависимостей, есть способ, чтобы сделать что-то подобное с событиями вместо?
Mark Feldman
0

голосов
1

ответ
462

Просмотры

Ninject Dependency Injection Scoping

Я пытаюсь придать зависимости в иерархией с Ninject и у меня есть вопрос о обзорных в отложенной инъекции. У меня есть основная иерархическая структура, содержащая родителя и ребенок. Ребенок получает инъекции в родитель и оба они получают инъекции с «гербом» собственность: Родитель общественного класса {[Inject] общественность Ребенок ребенком {получить; задавать; } [Вводить] общественный CoatOfArms CoatOfArms {получить; задавать; }} Общественного класса по уходу за детьми {[Inject] общедоступный CoatOfArms CoatOfArms {получить; задавать; }} общественного класса CoatOfArms {} Так как они находятся в одной и той же семьи, что они оба должны получить тот же герб, поэтому я настраивал свои привязки к объему их к CoastOfArms в запросе родительском: класс FamilyModule общественности: NinjectModule {общественного переопределения недействительные нагрузки () {Bind () ToSelf (). Bind () ToSelf (). .. Bind () ToSelf () InScope (CTX => {вар запрос = ctx.Request; если (TypeOf (Parent) .IsAssignableFrom (request.Service)) возвращение запроса;! В то время как ((запрос = request.ParentRequest) = нуль ), если (TypeOf (родитель) .IsAssignableFrom (request.Service)) возвращение запрос, возвращение нового объекта ();}); }} Это все работает отлично, но давайте скажем, я хочу, чтобы изменить его немного, чтобы ребенок впрыскивается позже, а после того, как родитель был введен. Я удалить атрибут Inject на имущество ребенка, впрыскивают ядро ​​и использовать его, чтобы ввести ребенка в метод: [Inject] публичное Ikernel Kernel {получить; задавать; } Общественного Ребенок Ребенок {получить; задавать; } Общественного недействительными InjectChild () {this.Child = this.Kernel.Get (); } Это ломает, потому что это совершенно новый запрос и подойдите запрос дерево останавливается с этим запросом. Я мог бы вручную передать в CoatOfArms как собственность, но тогда я должен был бы помнить, чтобы сделать это везде в коде, который пытается создать дочерний объект. Кроме того, класс ребенок может иметь детей и внуков своей собственной и т.д., так что я бы ветер, чтобы вручную передавать параметры все вниз по цепочке иерархии снова, таким образом, теряет все преимущества зависимости инжекционного обзорного с самого начала. Есть ли способ, чтобы создать свой дочерний объект и каким-то образом связать запрос на запрос родителя, так что обзорное работает, как если бы ребенок был введен в то же время, как родитель? Я мог бы вручную передать в CoatOfArms как собственность, но тогда я должен был бы помнить, чтобы сделать это везде в коде, который пытается создать дочерний объект. Кроме того, класс ребенок может иметь детей и внуков своей собственной и т.д., так что я бы ветер, чтобы вручную передавать параметры все вниз по цепочке иерархии снова, таким образом, теряет все преимущества зависимости инжекционного обзорного с самого начала. Есть ли способ, чтобы создать свой дочерний объект и каким-то образом связать запрос на запрос родителя, так что обзорное работает, как если бы ребенок был введен в то же время, как родитель? Я мог бы вручную передать в CoatOfArms как собственность, но тогда я должен был бы помнить, чтобы сделать это везде в коде, который пытается создать дочерний объект. Кроме того, класс ребенок может иметь детей и внуков своей собственной и т.д., так что я бы ветер, чтобы вручную передавать параметры все вниз по цепочке иерархии снова, таким образом, теряет все преимущества зависимости инжекционного обзорного с самого начала. Есть ли способ, чтобы создать свой дочерний объект и каким-то образом связать запрос на запрос родителя, так что обзорное работает, как если бы ребенок был введен в то же время, как родитель? Кроме того, класс ребенок может иметь детей и внуков своей собственной и т.д., так что я бы ветер, чтобы вручную передавать параметры все вниз по цепочке иерархии снова, таким образом, теряет все преимущества зависимости инжекционного обзорного с самого начала. Есть ли способ, чтобы создать свой дочерний объект и каким-то образом связать запрос на запрос родителя, так что обзорное работает, как если бы ребенок был введен в то же время, как родитель? Кроме того, класс ребенок может иметь детей и внуков своей собственной и т.д., так что я бы ветер, чтобы вручную передавать параметры все вниз по цепочке иерархии снова, таким образом, теряет все преимущества зависимости инжекционного обзорного с самого начала. Есть ли способ, чтобы создать свой дочерний объект и каким-то образом связать запрос на запрос родителя, так что обзорное работает, как если бы ребенок был введен в то же время, как родитель?
Mark Feldman