Application.Resources

Apr 28, 2010 at 10:15 AM

Hi,

I don't have a App.xaml oder Application.xaml in my projects. I want to use the Ribbon in my ControlLibrary. The Controls within this Library will be added to a Forms.ElementHost. So you see I have no pure WPF application. What can I do? Adding the Theme to the UserControl.Resources-Property doesn't work.

Thanks

Coordinator
Apr 28, 2010 at 11:54 AM

I am afraid you can not use this control library out of WPF app. The current version requires that Ribbon must be within System.Windows.Window

Apr 28, 2010 at 12:15 PM

That should be a Feature request with high priority, I think. :-)    We are looking for a RibbonControl and hoped to find something interesting on codeplex.com. Our software currently migrates from System.Windows.Form-Controls to WPF. This will last at least 1 year. So we have to use that hybrid-Solution (Forms+WPF). But when your library requires a WPF-Window or rather a WPF-Application-project, we can't use it.

Coordinator
Apr 28, 2010 at 1:07 PM

If you are migrating to WPF, maybe creating WPF application would be good start. I do not know your project and how many it has legacy controls... You can create WPF application, Fluent.RibbonWindow, add Ribbon and add WindowsFormsHost. in WindowsFormHost you can insert your legacy controls. And.. little by little.. rewrite you controls to WPF ones.

Daniel

Apr 29, 2010 at 5:29 AM
Edited May 5, 2010 at 5:54 AM

Unfortunatly, there is too much functionality within our main Forms-Window. At this point it is impossible for us to start with the Forms Window. Maybe it will be the last control to be migrated. Isn't there a tricky work around for this issue?

And in general, what happens if you replace any StaticResource references to DynamicResource references in your source code? Maybe the main ResourceDictionary can be loaded/merged later and at another place (instead of in the App.xaml where no Window/UserControl is loaded before). Then we can have the wished flexibility.

Thanks for your answer!

Andre

Jun 22, 2010 at 12:32 PM

Hallo,

I would like to use the Fluent Ribbon in my Windows Forms project. In addition I wanted to use the ElementHost-Control. now when I connect the Ribbon menu with the Elementhost comes at start of the program the following error message. Can anyone help with this?

 

My RibbonMenu.xaml:

<Window x:Class="Ribbon_Menu"
             xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
             xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
             xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006" 
             xmlns:d="http://schemas.microsoft.com/expression/blend/2008" 
             xmlns:Fluent="clr-namespace:Fluent;assembly=Fluent"

             mc:Ignorable="d" 
             d:DesignHeight="187" d:DesignWidth="462">

    <Window.Resources>
        <!--Attach Default Fluent Control's Theme-->
        <ResourceDictionary Source="pack://application:,,,/Fluent;Component/Themes/Office2010/Silver.xaml" />
    </Window.Resources>

    <Grid>
        <Fluent:Ribbon>
            <Fluent:RibbonTabItem>

            </Fluent:RibbonTabItem>
        </Fluent:Ribbon>

    </Grid>
</Window>

The Error-Message:

Fehler beim Erstellen des Formulars. Weitere Informationen finden Sie in Exception.InnerException. Fehler: Die in der Assembly "Fluent, Version=1.3.0.0, Culture=neutral, PublicKeyToken=3e436e32a8c5546f" definierte Instanz von "RibbonTabItem" kann nicht erstellt werden. Ein Aufrufziel hat einen Ausnahmefehler verursacht.  Fehler in Objekt "Fluent.Ribbon" in Markupdatei "Ribbon-Test;component/ribbonmenu.xaml", Zeile 18, Position 14..

Thankyou

Taucher4000

Coordinator
Jun 22, 2010 at 1:21 PM
I don't get exceptions in RibbonMenu.xaml. What do you mean "I connect the Ribbon menu with the Elementhost"?
Jun 22, 2010 at 3:10 PM
Edited Jun 22, 2010 at 3:12 PM

Hello daVinci,

Sorry for my expression. I mean I create a Elementhost in my Window Form and set the Child property to 'Ribbon_Menu'.

Elementhost1.Child = ....

Here is my WinForm Designer- File Form1.Designer.vb

 

<Global.Microsoft.VisualBasic.CompilerServices.DesignerGenerated()> _
Partial Class Form1
    Inherits System.Windows.Forms.Form

    'Das Formular überschreibt den Löschvorgang, um die Komponentenliste zu bereinigen.
    <System.Diagnostics.DebuggerNonUserCode()> _
    Protected Overrides Sub Dispose(ByVal disposing As Boolean)
        Try
            If disposing AndAlso components IsNot Nothing Then
                components.Dispose()
            End If
        Finally
            MyBase.Dispose(disposing)
        End Try
    End Sub

    'Wird vom Windows Form-Designer benötigt.
    Private components As System.ComponentModel.IContainer

    'Hinweis: Die folgende Prozedur ist für den Windows Form-Designer erforderlich.
    'Das Bearbeiten ist mit dem Windows Form-Designer möglich.  
    'Das Bearbeiten mit dem Code-Editor ist nicht möglich.
    <System.Diagnostics.DebuggerStepThrough()> _
    Private Sub InitializeComponent()
        Me.ElementHost1 = New System.Windows.Forms.Integration.ElementHost()
        Me.Ribbon_Menu1 = New WindowsApplication1.Ribbon_Menu()
        Me.SuspendLayout()
        '
        'ElementHost1
        '
        Me.ElementHost1.AutoSize = True
        Me.ElementHost1.Dock = System.Windows.Forms.DockStyle.Fill
        Me.ElementHost1.Location = New System.Drawing.Point(0, 0)
        Me.ElementHost1.Name = "ElementHost1"
        Me.ElementHost1.Size = New System.Drawing.Size(845, 449)
        Me.ElementHost1.TabIndex = 1
        Me.ElementHost1.Text = "ElementHost1"
        Me.ElementHost1.Child = Me.Ribbon_Menu1
        '
        'Form1
        '
        Me.AutoScaleDimensions = New System.Drawing.SizeF(6.0!, 13.0!)
        Me.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font
        Me.ClientSize = New System.Drawing.Size(845, 449)
        Me.Controls.Add(Me.ElementHost1)
        Me.Name = "Form1"
        Me.Text = "Form1"
        Me.ResumeLayout(False)
        Me.PerformLayout()

    End Sub
    Friend WithEvents ElementHost1 As System.Windows.Forms.Integration.ElementHost
    Friend Ribbon_Menu1 As WindowsApplication1.Ribbon_Menu

End Class

 

Thanks

Taucher4000

Jun 23, 2010 at 5:35 PM
Edited Jun 23, 2010 at 5:36 PM

Has anyone an tip for me? I can also send you liked my test project.

Coordinator
Jun 24, 2010 at 3:21 AM

I think the trouble lies somewhere in the fact that the current version requires that Ribbon must be within System.Windows.Window. We will investigate the possibility to use Fluent out of System.Windows.Window in v2.

Aug 23, 2010 at 9:37 AM

When you plan to release the 2nd version?