You should not have the app.xaml in a user control lib. get rid of that.
The problem you have is that the user control lib is really for UIelements that are effectively told what resources to use by the application that references the user control lib. The way around this is to create a resource dictionary with the resources in it (and or references) and then on the user controls reference this resource in the usercontrol.resources section.
i.e.(note this is from a Silverlight Project but principals are the same)
Resource Dictionary
<ResourceDictionary xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml">
<Style x:Key="TextBlockWithMargin" TargetType="TextBlock">
<Setter Property="Margin" Value="10" />
</Style>
User control
<UserControl x:Class="x.x.Test"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
mc:Ignorable="d"
d:DesignHeight="300" d:DesignWidth="400">
<UserControl.Resources>
<ResourceDictionary>
<ResourceDictionary.MergedDictionaries>
<ResourceDictionary Source="/ProjectA;component/MyResourceDictionary.xaml" />
</ResourceDictionary.MergedDictionaries>
</ResourceDictionary>
</UserControl.Resources>
<Grid x:Name="LayoutRoot" removed="White">
</Grid>
</UserControl>
You would normally have the resources set in the application app.xaml. You have mentioned that the application has been changed to a usercontrol lib. So where will this be referenced? Are you saying that you want to run a usercontrol lib on its own?
To get around the compiletime errors you can use {DynamicResource Foreground}. Dynamic resource will not get set until runtime so compilations should work. You will still have issues if the usercontrol is not aware or cannot find the correct resource though.
If you provide a bit more background to what you are doing or want to achieve then I can probably help further.
thanks