Autor Beitrag
kaetzchen1976
Hält's aus hier
Beiträge: 5



BeitragVerfasst: Mi 28.03.07 13:26 
Hallo zusammen,

ich suche schon nach einer Weile nach einer Idee, wie ich Floating Windows in WPF erstellen kann. Gefunden habe ich bis jetzt als Beispiel:

assergs.com/wpf/

Allerdings bekomme ich nicht heraus, wie man so etwas erstellt. Den Entwickler habe ich schon angemailt, aber bisher keine Antwort erhalten.

Fenster im Fenster sind bei WPF nicht erlaubt. Da stolpere ich schon bei MDI drüber (wo ich auch noch immer eine nette Lösung suche).

Es gibt bei WPF zwar die Möglichkeit, die Windows Forms einzubinden, aber dies sollte nur eine Notlösung sein und bringt mich hier nicht wirklich weiter.

Hat jemand einen Tip, wie ich das Ganze anfangen muss?

Grüsse
Micha


Moderiert von user profile iconChristian S.: Topic aus Allgemeine .NET-Fragen verschoben am Fr 30.03.2007 um 10:36
Kha
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 3803
Erhaltene Danke: 176

Arch Linux
Python, C, C++ (vim)
BeitragVerfasst: Mi 28.03.07 21:25 
Ich denke, das gesamte System ist selbsterstellt. Ich habe jedenfalls noch keine frei verfügbare Lib dafür gesehen und wüsste nicht, wie das ohne einen kompletten Neuanfang ab ContentControl-Ebene funktionieren sollte.

[add]Gleiches gilt auch fürs Thema MDI.[/add]
[add id="1"]
Mir war mal wieder nach destruktivem Werkeln:
ausblenden C#-Quelltext
1:
2:
[TemplatePart(Name="PART_Dragger", Type=typeof(UIElement)), TemplatePart(Name="PART_ResizeGrip", Type=typeof(ResizeGrip))]
public class ToolWindow : HeaderedContentControl

Assembly Assergs.Windows, Version 1.0.0.0
[/add]
kaetzchen1976 Threadstarter
Hält's aus hier
Beiträge: 5



BeitragVerfasst: Do 29.03.07 11:30 
Titel: Problem gelöst
Der Verweis auf das HeaderedContentControl war genau das, was ich noch brauchte, nachdem ich mit viel Mühe ein Control zum moven gebracht habe :D

ausblenden volle Höhe XML-Daten
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
25:
26:
27:
28:
29:
30:
31:
32:
33:
34:
35:
36:
37:
<DataTemplate x:Key="header">
  <TextBlock Text="{Binding}" Background="DarkRed" 
    Foreground="White" FontSize="16" FontWeight="Bold" 
           Width="150" Height="20" TextWrapping="Wrap"/>
</DataTemplate>
<DataTemplate x:Key="content">
  <TextBlock Text="{Binding}" Background="Silver" Opacity="0.7" 
    Foreground="DarkRed" FontSize="12" FontWeight="Normal" 
    Width="150" Height="60" TextWrapping="Wrap"/>
</DataTemplate>

<Style x:Key="HeaderedContentControl"
  TargetType="{x:Type HeaderedContentControl}">
  <Setter Property="Template">
         <Setter.Value>
      <ControlTemplate TargetType="{x:Type HeaderedContentControl}">
        <StackPanel>
          <ContentPresenter ContentSource="Header"/>
          <ContentPresenter ContentSource="Content"/>
        </StackPanel>
      </ControlTemplate>
    </Setter.Value>
  </Setter>
</Style>

...

<HeaderedContentControl Name="myControl" Header="Window 1" 
  HeaderTemplate="{StaticResource header}"
  Canvas.Top="10" Canvas.Left="20"
  AllowDrop="True" 
  MouseDown="control_MouseDown"
  MouseMove="control_MouseMove"
  MouseUp="control_MouseUp">
  <ContentControl Name="myContent" Content="This is the content of window 1."
    ContentTemplate="{StaticResource content}"/>
</HeaderedContentControl>


Danke dir!

Allerdings finde ich die Programmierung bei WPF schon leicht gewöhnungsbedürftig, weil oft bekannte Dinge aus den Forms nicht mehr verwendet werden können... :?
Kha
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 3803
Erhaltene Danke: 176

Arch Linux
Python, C, C++ (vim)
BeitragVerfasst: Do 29.03.07 19:23 
WPF v3 ist an einigen Stellen wirklich noch unausgereift oder einfach lückenhaft, aber zumindest MDI will Microsoft langsam einfach sterben lassen ;) .
kaetzchen1976 Threadstarter
Hält's aus hier
Beiträge: 5



BeitragVerfasst: Fr 30.03.07 06:58 
Ja, gelesen habe ich das auch öfter. Wird von denen selber ja auch nur noch im Excel verwendet, soweit ich weiß. Hier und da gibt trotzdem Gerüchte, dass es vielleicht doch irgendwann unterstützt wird. Allerdings muss man irre aufpassen, von wann die Artikel sind. Die Beiträge, die älter als ein halbes Jahr sind, kann man sowohl aussagemäßig als auch beispielcodemäßig meist nicht mehr gebrauchen.

"Ersetzt" werden soll MDI jetzt mit den Tabs, wie auch schon im neuen IE gezeigt. Aber meinem Prof schwebt halt noch was MDI-mäßiges vor. Ich kann ihm jetzt ein paar Sachen vorführen, wie es NICHT geht. Oder wie es ähnlich aussieht, aber total von hinten durch die Brust erstellt ist :lol: