Laden...
Avatar #avatar-2980.jpg
Taladan myCSharp.de - Member
Individualprogrammierer sowie Student Osnabrück Dabei seit 06.04.2008 582 Beiträge
Benutzerbeschreibung

Forenbeiträge von Taladan Ingesamt 582 Beiträge

30.10.2009 - 18:11 Uhr

Weil das ganze innerhalb eines Dockpanels ist und ein neues element das layout ändert. Ein Adorner scheint das richtige zu sein.

30.10.2009 - 12:07 Uhr

Hallo,

wenn ich bei einen Element über eine spezielle Stelle fahre, soll über einen bestimmten Teil des Elements eine Art Rahmen eingeblendet werden. Dieses soll aber muß aber rein Visuell sein, da jedes hinzufügen von Elementen auch das Layout verändern würde. Wie kann ich das bewerkstelligen?

29.10.2009 - 15:13 Uhr

Hallo,
ich verwende ein TabControl. Dieses habe ich mti Drag&Drop Events befüllt. Wenn ich jetzt aber in den Contents der einzelnen Items Controls hinzufüge, mag will mein DragOver Ereignis nicht mehr funktionen. Wahrscheinlich weil die Controls kein AllowDrop haben. Ich habe es schon mit PreviewDragOver probiert aber auch hier werden die events nicht geschossen.
Kann mir jemand sagen wie ich das bewerkstelleigen kann?

27.10.2009 - 16:45 Uhr

Eben. Aber hab jetzt eine lösung, obwohl mir das Problem immer noch schleierhaft ist, drageventargs hat ebenfalls ein GetPosition() welchen genau wie die Funktion von Mouse funktioniert und liefert auch die richtigen Daten.

27.10.2009 - 16:20 Uhr

Ich frag jedoch beides direkt von dem Mouse-Objekt ab. Meiner Meinung nach dürfte es kein Unterschied geben.

27.10.2009 - 16:05 Uhr

Hallo,

im DragOver Ereignis meines TabControls bekomme ich bei den Events DragOver und MouseMove zwei verschiedene Positionen. Obwohl die Maus selbst nicht bewegt wurde. Schlimmer noch, im DragOver ereignis erhalte ich negative Werte. Woran kann das liegen?


 Point position = Mouse.GetPosition(MainSpace);
 Test.Text = "X: " + position.X + "\n" + "Y: " + position.Y;

27.10.2009 - 15:29 Uhr

Hallo Zusammen,

wie kann ich bei einen Tabcontrol abfragen, ob die Maus beim DragOver Ereignis über dem Header oder dem Content ist?

12.10.2009 - 20:06 Uhr

Hallo,

ich serialisiere aktuell alles per XML. Nun bin ich am überlegen, ob ich das ganze dann doch lieber in eine Datenbank packe, da die Daten dann doch langsam recht viel werden. Nun frage ich mich, was ich da am besten nehmen kann.
Da mein Programm auch andere nutzen, welche extreme Anfänger sind, muß ich auf jeden Fall drauf achten, das von der Installation bis hin zum Handling total easy ist. Ich selbst habe einige Erfahrungen mit MySQL oder Oracel-Datenbanken (allerdings kaum als Admin). Aber MySQL ist meiner Meinung nach die Installation zu kompliziert und Oracel kommt aus Lizenzgründen schon gar nicht in Frage, da es sich um ein Hobbyprojekt handelt.
Hat da jemand eine Empfehlung für mich?

10.10.2009 - 18:17 Uhr

Nun gut, es funktioniert auch ohne. Aber das problem ist, bei großen Tabellen geht echt performace flöten, wenn er alles neu ausließt.

10.10.2009 - 12:53 Uhr

Danke, die Eigenschaften kannte ich nicht.

10.10.2009 - 12:53 Uhr

Hallo,
in einer Listview lasse ich die Gruppierung Aufgrund einer Property anzeigen. Jedoch wird diese Gruppierung nicht aktualisert, wenn sich die Properys ändern. Kann ich das irgendwie über bindings bewerkstelligen?


   if (collectionView != null)
            {
                collectionView.GroupDescriptions.Clear();
                PropertyGroupDescription groupDescription = new PropertyGroupDescription();
                groupDescription.PropertyName = "Category";
                collectionView.GroupDescriptions.Add(groupDescription);
            }


09.10.2009 - 20:07 Uhr

Falsch. SelectedValue nimmt nur den wert von SelectedValuePath. Da dieser aber in der Regel nicht verwendet wird, mußt du wohl casten.

Wenn listviewitem sender ist



meinObject obj = (meinObject )(sender as ListViewItem).Content

wenn etwas anderes sender ist


meinObject obj =   (meinObject )(ListView1.SelectedItem ListViewItem).Content

Übrigens kannst du dir üebr SelectedItems auch eine Collection deiner Items holen und versuchen manuell deinen Wunsch um zu setzen (also dein Multibinding).

09.10.2009 - 19:59 Uhr

Hallo,

ich binde eine Textbox und möchte gerne ein Event schießen, wenn sich der Text in der Textbox verändert, aber nur wenn sich das auf das aktuelle Binding bezieht (ist an eine Listbox.SelectedItem gekoppelt). Also um genau zu sein, wenn das SourceElement einen neuen Wert zu gewiesen bekommt.

Sowohl SourceUpdated wie auch TargetUpdated werden hier nicht gefeuert. Was mache ich falsch?

                    <TextBox Grid.Column="1" Grid.Row="4" Name="tbDocumentCategory" Grid.ColumnSpan="2" 
                                         Text="{Binding Path=Category, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}"
                                         LostFocus="tbDokumentTextBox_LostFocus" SourceUpdated="tbDocumentCategory_SourceUpdated" TargetUpdated="tbDocumentCategory_TargetUpdated" />

07.10.2009 - 21:54 Uhr

Das funktioniert nicht mit WPF Anwendungen, da WPF Anwendungen kein CLSID finden können. Sonst hätte ich es gerne genutzt.

07.10.2009 - 21:32 Uhr

Hallo,

ich nutze axAcroPDF Element und muß dafür ja die DLL als Verweis eintragen. Kann man das nicht irgendwie dynamsich gestalten. Das auf rechnern, wo der Acrobatreader nicht installiert ist, keine Fehlermeldung kommt?

Dachte so daran, erst prüfen ob vorhanden, dll laden und dann das abgeleitete Object erzeugen /verwenden.

Ist das möglich?

03.10.2009 - 13:57 Uhr

Und wo? habt nichts gefunden

03.10.2009 - 13:56 Uhr

Habs gefunden. Ab der 2007 version sollen keine Dokumente mehr im Webbrowser dargestellt werden. Dies liegt am Dokumententyp und muß speziel registriert werden, wenn man ein anderes Verhalten möchte.

02.10.2009 - 19:18 Uhr

*ausgrab*

habe den Webbrowser ausprobiert. leider bekomme ich immer einen download, wenn ich per Navigate den befehl gebe?

02.10.2009 - 19:15 Uhr

Dumme Frage, darf man das einfach. Wahrscheinlich würde ich doch gegen Lizenzen verstoßen, oder nicht?

PS: Ich habe vor diesen Lizenzgeschichten echt tierischen Bammel, da ich mich damit gar nicht auskenne. Deshalb vermeide ich normalerweise komplett externe Bibliotheken.

02.10.2009 - 19:13 Uhr

iTextSharp is a port of the iText, a free Java-Pdf library.

iText
Price: $49.99 (Softbound print book) | $29.99 (PDF ebook)

Hat mich darauf gebracht. Ich habe erst später gelesen, das es nur daraus entstanden und jetzt getrennt entwickelt wird.

02.10.2009 - 19:11 Uhr

Hallo,

ich wollte gerne Worddateien (.doc / .docx) und ggf auch Excel und Powerpoint Dateien in meiner WPF Application anzeigen lassen. Ich habe die letzten 3 Stunden bei Google danach gesucht (speziell Word) aber nichts brauchbares gefunden. Es scheint eine möglichkeit zu geben, wie hier beschrieben

[URL=
>
]externer Link[/url] jedoch scheitert es schon daran, das ich diese Komponenten nicht finden kann, obwohl ich MS Office Student and Home installiert habe.

* Microsoft.Office.Tools.v9.0.dll  
* Microsoft.Office.Tools.Word.v9.0dll  
* Microsoft.VisualStudio.Tools.Office.Runtime.v9.0.dll  
* Microsoft.Office.Interop.Word.dll  

Ich habe überhaupt keine Microsoft.Office dll´s gefunden.

Kann mir jemand weiter Helfen?

02.10.2009 - 19:02 Uhr

Hallo,

ich nutze diverse Verweise in meinen Project. Z.b. die AcroPDFLib. Was passiert, wenn man das Programm auf einen Rechner ausführen will, wo die nicht installiert wurde/wird? Gibt es Fehlermeldungen? Wann gibt es die?

02.10.2009 - 15:55 Uhr

Das ganze schaut auf einer Java und kostenpflichtigen Tool zu basieren. Daher ist das nicht meine Ideallösung.

02.10.2009 - 08:30 Uhr

Hallo,

hat einer eine Idee, wie ich meinen Programm eine PDF Volltextsuche verpassen kann? Ich nutze zur Zeit PDF als AktivX Steuerelement. Für Ideen und Anregungen bin ich sehr dankbar, da ich bei einer Onlinerecherche nicht wirklich was gefunden.

Gruß Marco

29.09.2009 - 20:50 Uhr

Hallo Rainbird,

ich deinen o.g. Code in einem WPF Control verpacken. Also erst ein WPF UserControl mit einem WindowsFormHost und darein dann das AdobeReaderControl.

Doch wenn ich dann this.GetOcx(); ausführen lasse, dann wird kein Object zurück geliefert. Eine Idee warum?

29.09.2009 - 20:49 Uhr

Wahrscheinlich hast du ein 64er System oder Adobe Reader nicht installiert?

29.09.2009 - 20:31 Uhr

Jepp


object Ocx = this.GetOcx();
            System.Type typ = Ocx.GetType();
            typ.InvokeMember("LoadFile", BindingFlags.InvokeMethod | BindingFlags.OptionalParamBinding, null, Ocx, new object[1] { path });

Beim OCX Object wird nichts zurück geliefert. Weiß aber nicht warum. Einziger unterschied ist, das es sich einmal um ein Win32 projekt handelt und bei meiner control um wpf.

29.09.2009 - 20:20 Uhr

Hallo,

ich habe diesen Quellcode verwendet,
Adobe Reader ActiveX ohne Interop-Verweis versionsunabhängig in Windows.Forms hosten
um mir eine WPF Control zu erstellen, die dann ein Windowsformhost und diese wiederum die o.g. Komponente enthält.
Jedoch bekomme ich an jener Stelle


this.GetOcx().GetType().InvokeMember("LoadFile", BindingFlags.InvokeMethod | BindingFlags.OptionalParamBinding, null, this.GetOcx(), new object[1] { path });

eine Bugmeldung, das das Element nicht auf eine Instantz festgelegt wurde.

Und zwar scheint er den Typen nicht zurück zu liefern (GetType)

29.09.2009 - 18:16 Uhr

Hallo Experten,

ich habe schon ein paar Dinge mit PHP geschrieben und auch an verschiedenen CMS mit gewerkelt. Nun überlege ich, statt PHP/HTML auf Silverlight (wahrscheinlich ASP, oder?) umzusteigen. Hab auch schon diverse Erfahrungen mit C#/XAML/WPF.

  1. Ist der Umstieg etwas einfacheres oder muß ich dafür ein paar Wochen einplanen?
  2. Wie sieht es mit dem Hosting aus? Mein Webhoster nur PHP an (obwohl ich Superglücklich mit ihm bin), müßte ich wechseln. Was legt man für eine Domain samt Datenbankzugriff an? Interessiert mich vor allem, da ich momentan Superbillig mit meiner Domain bin (uralter Tarif mit massiven Rabatten, weil ich schon so lange dabei bin), und ich nur (erstmal) die Domain für private Zwecke (vorstellung eingener Programme, Forum, Blog) nutzen will.
27.09.2009 - 14:01 Uhr

Hat sich erledigt. Hab bei der Datenbindung nicht auf groß und kleinschreibung geachtet.

ElementName=Tv, <--- da war der Fehler

27.09.2009 - 13:48 Uhr

Mag sein. Aber irgendwie funktioniert das nicht. Das Template wird aus irgend einen Grunde nicht ausgewählt.

        
 <Page.Resources>

        <DataTemplate x:Key="ArchivDokument" DataType="{x:Type IK:ArchivItem}">
            <Border>
                <Border.DataContext>
                    <Binding ElementName="tv" Path="SelectedItem" />
                </Border.DataContext>
                <Grid>
                    <Grid.RowDefinitions>
                        <RowDefinition Height="Auto" />
                        <RowDefinition Height="Auto" />
                        <RowDefinition Height="Auto" />
                        <RowDefinition Height="Auto" />
                        <RowDefinition Height="Auto" />
                        <RowDefinition Height="Auto" />
                    </Grid.RowDefinitions>
                    <Grid.ColumnDefinitions>
                        <ColumnDefinition Width="Auto" />
                        <ColumnDefinition />
                        <ColumnDefinition Width="Auto" />
                    </Grid.ColumnDefinitions>
                    <Label Grid.Column="0" Grid.Row="0">Dokument</Label>
                    <Label Grid.Column="0" Grid.Row="1">Titel</Label>
                    <Label Grid.Column="0" Grid.Row="2">Schlagworte</Label>
                    <Label Grid.Column="0" Grid.Row="3">Bemerkung</Label>

                    <Button Grid.Column="3" Grid.Row="0" Name="btnOpenDokument" Click="btnOpenDokument_Click">...</Button>

                    <TextBox Grid.Column="1" Grid.Row="0" Name="tbDokumentPfad" 
                                         Text="{Binding Path=FileLocation, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}" TextChanged="tbDokumentPfad_TextChanged" />

                    <TextBox Grid.Column="1" Grid.Row="1" Name="tbDocumentTitel" Grid.ColumnSpan="2" 
                                         Text="{Binding Path=Name, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}" 
                                         />

                    <TextBox Grid.Column="1" Grid.Row="2" Name="tbDocumentSchlagworte" Grid.ColumnSpan="2" 
                                         Text="{Binding Path=KeyWords, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}"
                                         />

                    <TextBox Grid.Column="1" Grid.Row="3" Name="tbDocumentBemerkung" Grid.ColumnSpan="2" 
                                         Text="{Binding Path=Comment, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}"
                                         />

                    <Label Grid.Row="4" MouseDown="lvDocumentKategorien_MouseDown">Kategorien</Label>
                    <TextBox Grid.Column="1" Grid.Row="4" Name="tbDocumentCategory" Grid.ColumnSpan="2" 
                                         Text="{Binding Path=Category, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}"
                                         />

                </Grid>
            </Border>
        </DataTemplate>



        <IK:ArchivTemplateSelector x:Key="TemplateSelector" ArchivTemplateKey="ArchivDokument" />
 <IK:ExtendetListView x:Name="tv"    />
<ContentControl Name="ccDetails" Grid.Column="1" Grid.ColumnSpan="3"  Grid.Row="4" Grid.RowSpan="2" ContentTemplateSelector="{StaticResource TemplateSelector}"
             Content="{Binding ElementName=Tv, Path=SelectedItem, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}"     />


  public sealed class ArchivTemplateSelector : DataTemplateSelector
    {
        public object ArchivTemplateKey
        {
            get;
            set;
        }
        public object ImageTemplateKey
        {
            get;
            set;
        }

        public override DataTemplate SelectTemplate(object item, DependencyObject container)
        {
            FrameworkElement fe = container as FrameworkElement;
            if ((item != null) && (item is ArchivItem))
            {
                return fe.FindResource(ArchivTemplateKey) as DataTemplate;
            }
            return base.SelectTemplate(item, container);

        }
    }

25.09.2009 - 20:10 Uhr

Hallo,

ich wollte ein ContentControl dazu nutzen, um ein Detail-Content abhängig vom SelectedItem einer Listview an zu zeigen, die SelectedItems können durchaus unterschiedlichen Typs sein. Selbsterstellte Typen wie Beispielsweise ArchivItem oder PictureItem.

Wie kann ich nun WPF beibringen, das Richtige Template automatisch aus zu wählen?


<Style x:Key="ContentCtrl" TargetType="{x:Type ContentControl}">
    <Style.Triggers>
                <DataTrigger Binding="{Binding Content}" Value="{x:Type IK:ArchivItem}">
                    <Setter Property="Template">
                        <Setter.Value>
                            <ControlTemplate TargetType="{x:Type ContentControl}">
                                <Label>ArchivItem</Label>
                            </ControlTemplate>
                        </Setter.Value>
                    </Setter>
                </DataTrigger>
                <DataTrigger Binding="{Binding Content}" Value="{x:Type IK:PictureItem}">
                    <Setter Property="Template">
                        <Setter.Value>
                            <ControlTemplate TargetType="{x:Type ContentControl}">
                                <Label>PictureItem</Label>
                            </ControlTemplate>
                        </Setter.Value>
                    </Setter>
                </DataTrigger>
            </Style.Triggers>
 </Style>

<ContentControl Name="ccDetails" Style="{StaticResource ContentCtrl}"  Grid.Column="1" Grid.ColumnSpan="3"  Grid.Row="4" Grid.RowSpan="2" 
       Content="{Binding ElementName=Tv, Path=SelectedItem, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}"          />

Bei diesen Versuch bekomme ich die Fehlermeldung "Sowohl "Binding" als auch "Value" müssen für "DataTrigger" angegeben werden. "

22.09.2009 - 16:32 Uhr

Habe gerade eine einfachere Lösung gefunden, die komplett ohne Registry funktioniert und das ist genau das was ich wollte.


        private BitmapFrame getIconFromString(string Path)
        {
            Icon ico = Icon.ExtractAssociatedIcon(this.FileLocation);
            MemoryStream strm = new MemoryStream();
            ico.Save(strm);
            IconBitmapDecoder ibd = new IconBitmapDecoder(strm, BitmapCreateOptions.None, BitmapCacheOption.Default);
            return (BitmapFrame)ibd.Frames[0];
        }

21.09.2009 - 21:45 Uhr

*push* Hat jemand zumindest Schlagworte für mich, wonach ich suchen kann?

20.09.2009 - 18:17 Uhr

Ich habe jetzt raus gefunden was fehlte. Ich hatte das ganze in einen externen Assembly und in diesen fehlte folgender Eintrag.



[assembly: ThemeInfo(
    ResourceDictionaryLocation.None, //Speicherort der designspezifischen Ressourcenwörterbücher
    //(wird verwendet, wenn eine Ressource auf der Seite
    // oder in den Anwendungsressourcen-Wörterbüchern nicht gefunden werden kann.)
    ResourceDictionaryLocation.SourceAssembly //Speicherort des generischen Ressourcenwörterbuchs
    //(wird verwendet, wenn eine Ressource auf der Seite, in der Anwendung oder einem 
    // designspezifischen Ressourcenwörterbuch nicht gefunden werden kann.)
)]


Wie kann ich verhindern, das ich überhaupt eine Themesdatei brauche?

20.09.2009 - 17:20 Uhr

So jetzt noch mal mit Code.

Ich habe mich komplett an die Vorgaben gehalten. Wahrscheinlich sehe ich den Wald vor lauter bäumen nicht. Ich bekomme immer noch eine Auflistung statt Kacheln. Es ist so, als würde mein Datatemplate gar nicht verwendet werden. Aber der Debugger meckert auch nicht rum.


<UserControl x:Class="InsideKomponents.ExtendetListView"
    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
    xmlns:l="clr-namespace:InsideKomponents"
    >
    <UserControl.Resources>

        
        <!--PlainView Default Style for ListView-->
        <!--<SnippetPlainViewStyle>-->
        <Style x:Key="{ComponentResourceKey TypeInTargetAssembly={x:Type l:PlainView}, ResourceId=myPlainViewDSK}" TargetType="{x:Type ListView}" BasedOn="{StaticResource {x:Type ListBox}}">
            <Setter Property="HorizontalContentAlignment" Value="Center"/>
            <Setter Property="ItemContainerStyle"  Value="{Binding (ListView.View).ItemContainerStyle, RelativeSource={RelativeSource Self}}"/>
            <Setter Property="ItemTemplate" Value="{Binding (ListView.View).ItemTemplate, RelativeSource={RelativeSource Self}}"/>
            <Setter Property="ItemsPanel">
                <Setter.Value>
                    <ItemsPanelTemplate>
                        <WrapPanel Width="{Binding (FrameworkElement.ActualWidth), RelativeSource={RelativeSource AncestorType=ScrollContentPresenter}}"
                                   ItemWidth="{Binding (ListView.View).ItemWidth, RelativeSource={RelativeSource AncestorType=ListView}}"
                                   MinWidth="{Binding ItemWidth, RelativeSource={RelativeSource Self}}" 
                                   ItemHeight="{Binding (ListView.View).ItemHeight, RelativeSource={RelativeSource AncestorType=ListView}}"/>
                    </ItemsPanelTemplate>
                </Setter.Value>
            </Setter>
        </Style>
        <!--</SnippetPlainViewStyle>-->


        <!-- <Grid> -->
        <GridView x:Key="gridView">
            <GridViewColumn Header="Name" DisplayMemberBinding="{Binding Path=Name}"/>
            <GridViewColumn Header="Kategorien" DisplayMemberBinding="{Binding Path=Category}" />
        </GridView>
        <!-- </Grid> -->

        <!-- <IconView> -->
        <DataTemplate x:Key="iconTemplate" DataType="{x:Type l:ArchivItem}">
            <DockPanel Height="33" Width="150">
                <TextBlock DockPanel.Dock="Top" Text="{Binding Path=Name}" 
                     FontSize="13" HorizontalAlignment="Left" 
                     Margin="0,0,0,1" />
                <TextBlock Text="{Binding Path=Category}" FontSize="9" 
                     HorizontalAlignment="Left" Margin="0,0,0,1" />
            </DockPanel>
        </DataTemplate>

        <l:PlainView x:Key="iconView" 
                   ItemTemplate="{StaticResource iconTemplate}" 
                   ItemWidth="150"/>
        <!-- </IconView> -->
        
        
        
        
    </UserControl.Resources>
    <Grid>
        <Grid.RowDefinitions>
            <RowDefinition />
            <RowDefinition Height="Auto" />
        </Grid.RowDefinitions>

        <ListView Name="lv" FontSize="12" Background="LightBlue" 
                   >
            <ListView.ContextMenu>
                <ContextMenu>
                    <MenuItem Header="GridView" Click="SwitchViewMenu"/>
                    <MenuItem Header="IconView" Click="SwitchViewMenu"/>
                    <MenuItem Header="TileView" Click="SwitchViewMenu"/>
                    <MenuItem Header="OneButtonHeaderView" Click="SwitchViewMenu"/>
                </ContextMenu>
            </ListView.ContextMenu>


        </ListView>

        <StackPanel Grid.Row="1" Background="White">
            <TextBlock FontSize="16" Foreground="Blue">
                CurrentView: <TextBlock Name="currentView"/>
            </TextBlock>
            <TextBlock>
                Right-click in the content window to change the view.
            </TextBlock>
        </StackPanel>
    </Grid>
</UserControl>



20.09.2009 - 17:14 Uhr

Beides schon gemacht. Ich finde den Fehler nicht. Wahrscheinlich im XAML.

Es wird einfach nichts angezeigt sobald ich mein ein PlainView angewählt wird.

20.09.2009 - 16:51 Uhr

Sorry ich glaub, du meinst was ganz anderes.

Alle Elemente sollen nicht in einer Liste dargestellt werden, sondern in Kacheln. Beste Beispiel für eine ListView ist der WindowsExplorer. Der die Ordner in verschiednen Detaillisten und Detailkacheln darstellen kann.

Ich habe dieses Beispiel gefunden. Aber es scheint fehlerhaft zu sein. Bei mir verändert sich die anzeige kein bissl
http://msdn.microsoft.com/de-de/library/ms748859.aspx

20.09.2009 - 14:40 Uhr

Hallo,

zu WindowsFormszeiten war es noch ganz einfach, einer ListView eine Tileview hinzu zu fügen. Aber wie macht man das bei WPF? Auch eine googlerecherche brachte mir bisher nur immer wieder gridviews zu tage. Aber nirgends eine Tileview?

15.09.2009 - 10:25 Uhr

Hallo,

kann man irgendwie einem Listview/Listbox Item mehr als eine Gruppierung hinzufügen? D.h. das das Item in mehreren Gruppen angezeigt wird.

14.09.2009 - 22:54 Uhr

Hallo,

falsch rum. Ich möchte keine Dateierweiterung registrieren. Sondern lediglich das Icon einer registrierten Dateierweiterung auslesen. Beispielsweise bei .PDF dieses typsiche PDF Symbol was man im Explorer sehen kann. Dieses Symbol möchte ich dann auch in meinen Programm für entsprechende Dateierweiterungen in einer Dateiliste verwenden.

14.09.2009 - 20:51 Uhr

Selbe Problem hatte ich auch. Scheinbar gibt es keine möglichkeit die Parameter entsprechen so zu erweitern, das sie das aktuelle Object mit gibt. Daher wirst du wohl auf mehrere Parameter angewiesen sein.

14.09.2009 - 20:47 Uhr

Hallo,

Windows verknüpft Dateien mit verschiedenen Programmen. Die Dateierweiterungen erhalten dann hübsche kleine Icons. Wie kann man diese Icons auslesen und im eigenen Programm darstellen?

11.09.2009 - 18:53 Uhr

Man kann scheinbar jetzt auch TreeViews mit der Grundlage eines Usercontrols (also mit XAML) ableiten. Das erleichtert das ganze ja ungemein 😃.

11.09.2009 - 17:53 Uhr

Wie ich datentemplates zu ordne weiß ich, nur nicht, wenn man lediglich auf Code angewiesen ist.

11.09.2009 - 17:51 Uhr

Wenn du mit den normalen XMLSeralizer arbeitest:

Der schreibt alle öffentlichen Daten in die XML datei. Die erste session könntest du ggf als private deklarieren und schon ist sie nicht mehr darunter (internal würde auch gehen).

11.09.2009 - 17:47 Uhr

Hallo,

ich habe ein CustomTreeView, welches von einen TreeView abgeleitet wird


public class ExtendetTreeView : TreeView

Nun möchte ich jeden TreeViewItem ein spezielles Template mit geben. (Genauer gesagt, Drag and Drop Events hinzu fügen). Normalerweise macht man das ja über XAML, aber was macht man, wenn kein XAML verfügbar ist? Wie kann ich nun jeden TreeViewItem das Template zu orden (ich möchte ungerne jedes element einzend durchgehen müssen)

09.09.2009 - 20:16 Uhr

(seufz WPF ist echt kompliziert)

Aber ein DataTemplateSelector kann man doch nur einen Treeview und co anheften. Wie soll das mit einen ContentControl gehen?

08.09.2009 - 20:45 Uhr

Wie wäre den dein Lösungsansatz, also ohne Tabs?

08.09.2009 - 20:28 Uhr

Beispiel:

Listviewitem ist typ1 dann Tabitem 1 mit eigenschaft pfad
Listviewitem ist typ2 dann Tabitem 2 mit eigenschaften breite, höhe, pfad, document
Listviewitem ist typ3 dann Tabitem 3 mit eigenschaften dimensionen, pfad, document, Schlagworte

Die ListView und alle Elemente machen das was sie sollen. Jedoch erhalte ich wenn ich z.b. Typ 1 anwähle aus den Elementen des tabitems2 und 3 debuggerfehlermeldungen, da die Eigenschaften nicht Existieren.

z.B. eine bindung für eine Textbox im Tabitem 1

<Binding ElementName="tv" Path="SelectedItem.Path" UpdateSourceTrigger="PropertyChanged" />  

z.B. eine bindung für eine Textbox im TabItem2


<Binding ElementName="tv" Path="SelectedItem.dimensionen" UpdateSourceTrigger="PropertyChanged" />    

Ist mir erst gar nicht aufgefallen, weil alles ja so funktioniert, wie ich wollte, aber dann guckte eich wegen einen anderen problem auf die Debuggermeldungen und da waren dann die Probleme zu sehen.

Die Debuggermeldungen kommen wohl zu stande, weil das Framework versucht zu Binden, auch wenn die elemente nicht angezeigt werden (oder gar disabled sind)