尝试使用在另一个分隔的xaml文件中定义的颜色更改ForeColor或Backcolor。如果我使用它:
LOGIN SUCCESSFULL
Login.js:62 VALIDATE TOKEN SUCCESSFULL
Login.js:63 Response {type: "default", status: 200, ok: true, statusText: undefined, headers: Headers, …}
Login.js:65 {…}
IndexLunches.js:24 RESPONSE OK : GET LUNCHES
IndexLunches.js:27 (6) [{…}, {…}, {…}, {…}, {…}, {…}]
IndexLunches.js:28 Headers {map: {…}}
ShowLunch.js:48 ENTER IN LUNCH VIEW
ShowLunch.js:49 {}
ExceptionsManager.js:65 TypeError: Cannot read property '0' of undefined
This error is located at:
in ShowLunch (at navigationStore.js:319)
in Wrapped (at SceneView.js:31)
in SceneView (at CardStack.js:412)
in RCTView (at View.js:113)
in View (at CardStack.js:411)
in RCTView (at View.js:113)
in View (at CardStack.js:410)
in RCTView (at View.js:113)
in View (at createAnimatedComponent.js:134)
in AnimatedComponent (at Card.js:26)
in Card (at PointerEventsContainer.js:55)
in Container (at CardStack.js:454)
in RCTView (at View.js:113)
in View (at CardStack.js:383)
in RCTView (at View.js:113)
in View (at CardStack.js:382)
in CardStack (at CardStackTransitioner.js:97)
in RCTView (at View.js:113)
in View (at Transitioner.js:192)
in Transitioner (at CardStackTransitioner.js:49)
in CardStackTransitioner (at StackNavigator.js:60)
in Unknown (at createNavigator.js:52)
in Navigator (at createNavigationContainer.js:210)
in NavigationContainer (at Router.js:70)
in App (at Router.js:91)
in Router (at LunchRouter.js:31)
in LunchRouter (at App.js:16)
in RCTView (at View.js:113)
in View (at App.js:14)
in App (created by AwakeInDevApp)
in RCTView (at View.js:113)
in View (created by AwakeInDevApp)
in AwakeInDevApp (at registerRootComponent.js:34)
in RootErrorBoundary (at registerRootComponent.js:33)
in ExpoRootComponent (at renderApplication.js:35)
in RCTView (at View.js:113)
in View (at AppContainer.js:102)
in RCTView (at View.js:113)
in View (at AppContainer.js:122)
in AppContainer (at renderApplication.js:34)
handleException @ ExceptionsManager.js:65
ReactNativeFiberErrorDialog @ ReactNativeFiber-dev.js:231
logCapturedError @ ReactNativeFiber-dev.js:19
captureError @ ReactNativeFiber-dev.js:2649
performWork @ ReactNativeFiber-dev.js:2601
batchedUpdates @ ReactNativeFiber-dev.js:2756
batchedUpdates @ ReactNativeFiber-dev.js:202
batchedUpdatesWithControlledComponents @ ReactNativeFiber-dev.js:209
_receiveRootNodeIDEvent @ ReactNativeFiber-dev.js:3559
receiveTouches @ ReactNativeFiber-dev.js:3572
__callFunction @ MessageQueue.js:302
(anonymous) @ MessageQueue.js:116
__guard @ MessageQueue.js:265
callFunctionReturnFlushedQueue @ MessageQueue.js:115
(anonymous) @ debuggerWorker.js:72
ExceptionsManager.js:73 TypeError: TypeError: Cannot read property '0' of undefined
This error is located at:
in ShowLunch (at navigationStore.js:319)
in Wrapped (at SceneView.js:31)
in SceneView (at CardStack.js:412)
in RCTView (at View.js:113)
in View (at CardStack.js:411)
in RCTView (at View.js:113)
in View (at CardStack.js:410)
in RCTView (at View.js:113)
in View (at createAnimatedComponent.js:134)
in AnimatedComponent (at Card.js:26)
in Card (at PointerEventsContainer.js:55)
in Container (at CardStack.js:454)
in RCTView (at View.js:113)
in View (at CardStack.js:383)
in RCTView (at View.js:113)
in View (at CardStack.js:382)
in CardStack (at CardStackTransitioner.js:97)
in RCTView (at View.js:113)
in View (at Transitioner.js:192)
in Transitioner (at CardStackTransitioner.js:49)
in CardStackTransitioner (at StackNavigator.js:60)
in Unknown (at createNavigator.js:52)
in Navigator (at createNavigationContainer.js:210)
in NavigationContainer (at Router.js:70)
in App (at Router.js:91)
in Router (at LunchRouter.js:31)
in LunchRouter (at App.js:16)
in RCTView (at View.js:113)
in View (at App.js:14)
in App (created by AwakeInDevApp)
in RCTView (at View.js:113)
in View (created by AwakeInDevApp)
in AwakeInDevApp (at registerRootComponent.js:34)
in RootErrorBoundary (at registerRootComponent.js:33)
in ExpoRootComponent (at renderApplication.js:35)
in RCTView (at View.js:113)
in View (at AppContainer.js:102)
in RCTView (at View.js:113)
in View (at AppContainer.js:122)
in AppContainer (at renderApplication.js:34)
at ShowLunch.lunchView (ShowLunch.js:54)
at ShowLunch.proxiedMethod (createPrototypeProxy.js:44)
at ShowLunch.render (ShowLunch.js:72)
at ShowLunch.proxiedMethod (createPrototypeProxy.js:44)
at finishClassComponent (ReactNativeFiber-dev.js:1667)
at updateClassComponent (ReactNativeFiber-dev.js:1659)
at beginWork (ReactNativeFiber-dev.js:1786)
at performUnitOfWork (ReactNativeFiber-dev.js:2528)
at workLoop (ReactNativeFiber-dev.js:2554)
at Object._invokeGuardedCallback (ReactNativeFiber-dev.js:73)
reactConsoleErrorHandler @ ExceptionsManager.js:73
console.error @ YellowBox.js:71
componentDidCatch @ RootErrorBoundary.js:71
proxiedMethod @ createPrototypeProxy.js:44
commitErrorHandling @ ReactNativeFiber-dev.js:2675
commitAllLifeCycles @ ReactNativeFiber-dev.js:2462
_invokeGuardedCallback @ ReactNativeFiber-dev.js:73
invokeGuardedCallback @ ReactNativeFiber-dev.js:47
commitAllWork @ ReactNativeFiber-dev.js:2485
workLoop @ ReactNativeFiber-dev.js:2555
performWorkCatchBlock @ ReactNativeFiber-dev.js:2587
_invokeGuardedCallback @ ReactNativeFiber-dev.js:73
invokeGuardedCallback @ ReactNativeFiber-dev.js:47
performWork @ ReactNativeFiber-dev.js:2604
batchedUpdates @ ReactNativeFiber-dev.js:2756
batchedUpdates @ ReactNativeFiber-dev.js:202
batchedUpdatesWithControlledComponents @ ReactNativeFiber-dev.js:209
_receiveRootNodeIDEvent @ ReactNativeFiber-dev.js:3559
receiveTouches @ ReactNativeFiber-dev.js:3572
__callFunction @ MessageQueue.js:302
(anonymous) @ MessageQueue.js:116
__guard @ MessageQueue.js:265
callFunctionReturnFlushedQueue @ MessageQueue.js:115
(anonymous) @ debuggerWorker.js:72
ShowLunch.js:24 RESPONSE OK : GET LUNCH, ID: 5
ShowLunch.js:27 {id: 5, title: "Coconut, Beef and Winter melon ", description: "["Propre subline nom origines sans vers.", "Italiq…rent mille qui.", "Pour nostalgique fin chemin."]", portion: 4, supply: "Aucun", …}
ShowLunch.js:28 Headers {map: {…}}
ExceptionsManager.js:73 Warning: Can only update a mounted or mounting component. This usually means you called setState, replaceState, or forceUpdate on an unmounted component. This is a no-op.
Please check the code for the ShowLunch component.
我会在程序开始时抛出异常: System.InvalidCastException:“指定的强制转换无效。”
如果我使用它:
_toolTip.ForeColor = (Color)Application.Current.Resources["Color_001"];
它告诉我Color类不允许Null并且不能用as-operater引用。
我有没有错过的方法?
ColorBrush.xaml中的代码
_toolTip.ForeColor = Resources["Color_001"] as Color;
App.xaml中的代码
<Color x:Key="Color_001">#FFFFFFFF</Color>
App.xaml.cs中的代码
<Application.Resources>
<ResourceDictionary >
<ResourceDictionary.MergedDictionaries >
<ResourceDictionary Source="pack://application:,,,/ColorBrush.xaml" />
</ResourceDictionary.MergedDictionaries>
</ResourceDictionary>
</Application.Resources>
答案 0 :(得分:0)
确保您正在投射到正确的颜色类:
//Yep, working
System.Windows.Media.Color color1 = (System.Windows.Media.Color)Application.Current.Resources["Color_001"];
//Works too
System.Windows.Media.Color? color2 = Application.Current.Resources["Color_001"] as System.Windows.Media.Color?;
//InvalidCastException
System.Drawing.Color color3 = (System.Drawing.Color)Application.Current.Resources["Color_001"];
答案 1 :(得分:0)
在Roger Leblanc的帮助下的最终解决方案:
System.Windows.Media.Color color_01 = (System.Windows.Media.Color)Application.Current.Resources["Color_001"];
_toolTip.ForeColor = System.Drawing.Color.FromArgb(color_01.A, color_01.R, color_01.G, color_01.B);