В C# не работает Text Edit

249
13 мая 2017, 17:31

Приветствую, начал изучать C# с нуля по книге "Изучаем C#" Эндрю Стиллмена. В книге все происходит в VS2012 for Windows 8. Соответственно на компьютер именно эту версия и поставил, чтобы мог выполнять все действия буквально.
На одном этапе необходимо изменить текст через Edit Text контекстного меню. И я получаю вот это сообщение с ошибкой:

Microsoft.Expression.DesignHost.Isolation.Remoting.RemoteException Unable to cast object of type 'Windows.UI.Text.TextDecorations' to type 'System.Windows.TextDecorationCollection'. at Microsoft.Expression.DesignSurface.Tools.Text.TextBlockEditProxy.Instantiate() at Microsoft.Expression.DesignSurface.Tools.Text.TextEditProxy.AddToScene(Boolean visible) at Microsoft.Expression.DesignSurface.Tools.Text.TextToolBehavior.AddEditProxyToScene(TextEditProxy textEditProxy, Boolean visible) at Microsoft.Expression.DesignSurface.Tools.Text.TextToolBehavior.FindOrCreateEditProxy(SceneNode textElement, Boolean active) at Microsoft.Expression.DesignSurface.Tools.Text.TextToolBehavior.BeginTextEdit(SceneNode textElement) at Microsoft.Expression.DesignSurface.Tools.Text.TextToolBehavior.EditDifferentElement(SceneNode element, Boolean returnFocus) at Microsoft.Expression.DesignSurface.Tools.Text.TextToolBehavior.OnAttach() at Microsoft.Expression.DesignSurface.Tools.EventRouter.PushBehavior(ToolBehavior newActiveBehavior) at Microsoft.Expression.DesignSurface.View.SceneView.TryEnterTextEditMode(Boolean textElementOnly) at Microsoft.Expression.DesignSurface.SceneCommands.EditTextCommand.Execute() at Microsoft.Expression.Utility.Commands.CommandTarget.ExecuteCommand(String commandName, CommandInvocationSource invocationSource) at Microsoft.Expression.Utility.UserInterface.CommandBarButtonBase.<>c__DisplayClass1.b__0() at System.Windows.Threading.ExceptionWrapper.InternalRealCall(Delegate callback, Object args, Int32 numArgs) at System.Windows.Threading.ExceptionWrapper.TryCatchWhen(Object source, Delegate callback, Object args, Int32 numArgs, Delegate catchHandler) at System.Windows.Threading.DispatcherOperation.InvokeImpl() at System.Windows.Threading.DispatcherOperation.InvokeInSecurityContext(Object state) at System.Threading.ExecutionContext.RunInternal(ExecutionContext executionContext, ContextCallback callback, Object state, Boolean preserveSyncCtx) at System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state, Boolean preserveSyncCtx) at System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state) at MS.Internal.CulturePreservingExecutionContext.Run(CulturePreservingExecutionContext executionContext, ContextCallback callback, Object state) at System.Windows.Threading.DispatcherOperation.Invoke() at System.Windows.Threading.Dispatcher.ProcessQueue() at System.Windows.Threading.Dispatcher.WndProcHook(IntPtr hwnd, Int32 msg, IntPtr wParam, IntPtr lParam, Boolean& handled) at MS.Win32.HwndWrapper.WndProc(IntPtr hwnd, Int32 msg, IntPtr wParam, IntPtr lParam, Boolean& handled) at MS.Win32.HwndSubclass.DispatcherCallbackOperation(Object o) at System.Windows.Threading.ExceptionWrapper.InternalRealCall(Delegate callback, Object args, Int32 numArgs) at System.Windows.Threading.ExceptionWrapper.TryCatchWhen(Object source, Delegate callback, Object args, Int32 numArgs, Delegate catchHandler) at System.Windows.Threading.Dispatcher.LegacyInvokeImpl(DispatcherPriority priority, TimeSpan timeout, Delegate method, Object args, Int32 numArgs) at MS.Win32.HwndSubclass.SubclassWndProc(IntPtr hwnd, Int32 msg, IntPtr wParam, IntPtr lParam) at MS.Win32.UnsafeNativeMethods.DispatchMessage(MSG& msg) at System.Windows.Threading.Dispatcher.PushFrameImpl(DispatcherFrame frame) at System.Windows.Threading.Dispatcher.PushFrame(DispatcherFrame frame)
at System.Windows.Application.RunDispatcher(Object ignore) at System.Windows.Application.RunInternal(Window window) at System.Windows.Application.Run(Window window) at Microsoft.Expression.DesignHost.Isolation.IsolationProcess.RunApplication() at Microsoft.Expression.DesignHost.Isolation.IsolationProcess.DesignProcessViewProvider.<>c__DisplayClass7.b__6() at System.Threading.ThreadHelper.ThreadStart_Context(Object state)
at System.Threading.ExecutionContext.RunInternal(ExecutionContext executionContext, ContextCallback callback, Object state, Boolean preserveSyncCtx) at System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state, Boolean preserveSyncCtx) at System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state) at System.Threading.ThreadHelper.ThreadStart()

Answer 1

Смотрите. Во первых вы можете менять текст непосредственно в XAML. Это нижняя часть экрана:

Во вторых похоже что крэш - баг именно Visual Studio 2012 Express, т.к. на Visual Studio 2015 редактирование текста работает без проблем (я скачал ваш проект и проверил).

Советую установить Visual Studio 2017 community edition или Visual Studio 2015 community edition и делать все на нем. Если будут какие то отличия интерфейса от описанного в книге - тогда на небольшое время откроете проект в Visual Studio 2012 Express.

READ ALSO
Авто заполнение формы на сайте и получение данных

Авто заполнение формы на сайте и получение данных

В БД есть таблица логинов и паролей от личных кабинетов клиентов (логины и пароли выдаются при заключении договора с клиентом, так что фактически...

325
Чем открыть флеш-сайт, кроме WebBrowser?

Чем открыть флеш-сайт, кроме WebBrowser?

Чем открывать флеш-сайт, кроме WebBrowser?

210
VK API Загрузка картинки из ссылки php

VK API Загрузка картинки из ссылки php

У меня есть адрес для загрузки фото, который я получил следующим образом:

645
Yii 2, при message/extract, все поля message.translation NULL

Yii 2, при message/extract, все поля message.translation NULL

Доброго времени сутокИли чего то не понимаю, или что то не так

345