программа неожиданно закрывается - PullRequest
0 голосов
/ 24 ноября 2010

Возникли проблемы с моим первым приложением XAML, которое я создал в VB.net с использованием Visual Studio 2010. Каждый раз, когда я запускаю его и хочу нажать кнопку «Применить» (мне нужно ввести данные в некоторые поля, а затем нажать Применить кнопку, и это просто показывает messagebox.show из того, что я ввел) программа падает. Я использую Windows 7 x64 Ultimate Edition. Есть идеи?

Журнал событий показывает следующее:

Неверное имя приложения: CreditCard.exe, версия: 1.0.0.0, отметка времени: 0x4ceafa3a Неверное имя модуля: KERNELBASE.dll, версия: 6.1.7600.16385, отметка времени: 0x4a5bdbdf Код исключения: 0xe0434352 Смещение ошибки: 0x0000b727 Идентификатор ошибочного процесса: 0x14d0 Время запуска ошибочного приложения: 0x01cb8b5a4900b2cb Неверный путь к приложению: C: \ Users \ Chohan \ Documents \ Visual Studio 2010 \ Projects \ chapter6 \ CreditCard \ CreditCard \ bin \ Debug \ CreditCard.exe Неверный путь к модулю: C: \ Windows \ syswow64 \ KERNELBASE.dll Идентификатор отчета: 8eba45a2-f74d-11df-8e1c-506313a0ad71


Также:

Приложение: CreditCard.exe Версия Framework: v4.0.30319 Описание: процесс был прерван из-за необработанного исключения. Информация об исключении: System.InvalidCastException стек: в Microsoft.VisualBasic.CompilerServices.Conversions.ToDouble (System.String, System.Globalization.NumberFormatInfo) в Microsoft.VisualBasic.CompilerServices.Conversions.ToDouble (System.String) at CreditCard.MainWindow.btnApply_Click (System.Object, System.Windows.RoutedEventArgs) в System.Windows.RoutedEventHandlerInfo.InvokeHandler (System.Object, System.Windows.RoutedEventArgs) в System.Windows.EventRoute.InvokeHandlersImpl (System.Object, System.Windows.RoutedEventArgs, Boolean) в System.Windows.UIElement.RaiseEventImpl (System.Windows.DependencyObject, System.Windows.RoutedEventArgs) в System.Windows.UIElement.RaiseEvent (System.Windows.RoutedEventArgs) в System.Windows.Controls.Primitives.ButtonBase.OnClick () в System.Windows.Controls.Button.OnClick () в System.Windows.Controls.Primitives.ButtonBase.OnMouseLeftButtonUp (System.Windows.Input.MouseButtonEventArgs) в System.Windows.UIElement.OnMouseLeftButtonUpThunk (System.Object, System.Windows.Input.MouseButtonEventArgs) в System.Windows.Input.MouseButtonEventArgs.InvokeEventHandler (System.Delegate, System.Object) в System.Windows.RoutedEventArgs.InvokeHandler (System.Delegate, System.Object) в System.Windows.RoutedEventHandlerInfo.InvokeHandler (System.Object, System.Windows.RoutedEventArgs) в System.Windows.EventRoute.InvokeHandlersImpl (System.Object, System.Windows.RoutedEventArgs, Boolean) в System.Windows.UIElement.ReRaiseEventAs (System.Windows.DependencyObject, System.Windows.RoutedEventArgs, System.Windows.RoutedEvent) в System.Windows.UIElement.OnMouseUpThunk (System.Object, System.Windows.Input.MouseButtonEventArgs) в System.Windows.Input.MouseButtonEventArgs.InvokeEventHandler (System.Delegate, System.Object) в System.Windows.RoutedEventArgs.InvokeHandler (System.Delegate, System.Object) в System.Windows.RoutedEventHandlerInfo.InvokeHandler (System.Object, System.Windows.RoutedEventArgs) в System.Windows.EventRoute.InvokeHandlersImpl (System.Object, System.Windows.RoutedEventArgs, Boolean) в System.Windows.UIElement.RaiseEventImpl (System.Windows.DependencyObject, System.Windows.RoutedEventArgs) в System.Windows.UIElement.RaiseTrustedEvent (System.Windows.RoutedEventArgs) в System.Windows.UIElement.RaiseEvent (System.Windows.RoutedEventArgs, Boolean) в System.Windows.Input.InputManager.ProcessStagingArea () в System.Windows.Input.InputManager.ProcessInput (System.Windows.Input.InputEventArgs) в System.Windows.Input.InputProviderSite.ReportInput (System.Windows.Input.InputReport) в System.Windows.Interop.HwndMouseInputProvider.ReportInput (IntPtr, System.Windows.Input.InputMode, Int32, System.Windows.Input.RawMouseActions, Int32, Int32, Int32)в System.Windows.Interop.HwndMouseInputProvider.FilterMessage (IntPtr, MS.Internal.Interop.WindowMessage, IntPtr, IntPtr, Boolean ByRef) в System.Windows.Interop.HwndSource.InputFilterMessage (IntPtr, Int32, IntPtr, IntPtr, Boolean ByRef) в MS.Win32.HwndWrapper.WndProc (IntPtr, Int32, IntPtr, IntPtr, Boolean ByRef) в MS.Win32.HwndSubclass.DispatcherCallbackOperation (System.Object) в System.Windows.Threading.ExceptionWrapper.InternalRealCall (System.Delegate, System.Object, Int32) в MS.Internal.Threading.ExceptionFilterHelper.TryCatchWhen (System.Object, System.Delegate, System.Object, Int32, System.Delegate) в System.Windows.Threading.Dispatcher.InvokeImpl (System.Windows.Threading.DispatcherPriority, System.TimeSpan, System.Delegate, System.Object, Int32) в MS.Win32.HwndSubclass.SubclassWndProc (IntPtr, Int32, IntPtr, IntPtr) в MS.Win32.UnsafeNativeMethods.DispatchMessage (System.Windows.Interop.MSG ByRef) в System.Windows.Threading.Dispatcher.PushFrameImpl (System.Windows.Threading.DispatcherFrame) в System.Windows.Threading.Dispatcher.PushFrame (System.Windows.Threading.DispatcherFrame) в System.Windows.Threading.Dispatcher.Run () в System.Windows.Application.RunDispatcher (System.Object) в System.Windows.Application.RunInternal (System.Windows.Window) в System.Windows.Application.Run (System.Windows.Window) в System.Windows.Application.Run () в CreditCard.Application.Main ()

Ответы [ 3 ]

0 голосов
/ 24 ноября 2010

System.InvalidCastException

, если вы вводите строки в текстовое поле и анализируете его как целое или двойное, вы получите такую ​​ошибку.

0 голосов
/ 24 ноября 2010

Если вы действительно прочитали стек исключений, вы бы сами нашли ошибку. Это в вашем обработчике событий кнопки Apply:

Стек System.InvalidCastException: в Microsoft.VisualBasic.CompilerServices.Conversions.ToDouble (System.String, System.Globalization.NumberFormatInfo) в Microsoft.VisualBasic.CompilerServices.Conversions.ToDouble (System.String) в * 100 MainWindow.btnApply_Click (System.Object, System.Windows.RoutedEventArgs) при

Преобразование из строки в Double не обрабатывается правильно

0 голосов
/ 24 ноября 2010

Вы пытаетесь привести String к Double, и выдается исключение.

ToDouble(System.String, System.Globalization.NumberFormatInfo)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...