Laden...

Forenbeiträge von ProGamer Ingesamt 660 Beiträge

27.10.2010 - 11:51 Uhr

ích habe es jetzt folgender maßen gelöst:
(fltrCrit01 ist eine Eigenschaft die mittels Bindings an eine TextBox der View gebunden ist (Namen wurden hier angepasst ^^))

private void Filter()
{
var query = from tmp in MyList select tmp;

            if ( !string.IsNullOrEmpty( fltrCrit01 ) )
            {
                query = query.Where( c => c.MyField != null &&  c.MyField.ToLower().Contains( fltrCrit01.ToLower() ) );
            }
}

danach wird mittels einer foreach schleife die Auflistung in eine ObservableCollection übertragen.
Das ganze ist alles andere als Dynamisch. Ich habe mich zwar mittels google etwas schlau gemacht aber verstanden habe ich nicht viel -.-
hier mal so ein beispiel
Building LINQ Queries at Runtime in C#
hat jemand vllt etwas verständlicheres? link würde reichen

und die PagedCollectioNView eignet sich nicht zum Filtern so viel steht fest

EDIT:
Fehler im Code korrigiert

27.10.2010 - 08:39 Uhr

danke für die Antwort.
ok das mit LINQ leuchtet mir ein. ich werde es mal versuchen.
Bei fragen melde ich mich nochmal

26.10.2010 - 15:20 Uhr

Hallo zusammen,

ich hatte schon folgendes versucht um nach mehr Filterkriterien anzuwenden:

MyPagedCollectionView.Filter += ( o ) =>
                        {
                            if ( MyID != (int)MyEnum.None )
                            {
                                return ( ( (MyDBTableType)o ).FlagID == MyID );
                            }
                            else { return true; }
                        };

jedoch wird der aktuelle Filter vom neuen überschrieben.
wie schaffe ich es jetzt nach mehreren Kriterien zu Filtern?

26.10.2010 - 10:28 Uhr

hast du schon mal PartiotionMagic probiert?
du könntest dir auch eine StartCD (UBCD) erstellen auf dem so ein partitionierungstool
dabei ist und es damit mal versuchen. aber warum sollen nur 4 möglich sein? wie groß
ist denn deine HDD?

20.10.2010 - 12:34 Uhr

also wenn es freeware sein soll, dann ist die erste Anlaufstelle SourceForge.net ^^

Ich kann dir NClass auch sehr empfehlen.

13.10.2010 - 15:21 Uhr

*hmpf* ich war nah dran...

Danke an alle!

13.10.2010 - 10:10 Uhr

hmm kann sein dass ich mich etwas ungenau ausgedrückt habe. Sry dafür.

ich habe im Webservice eine Klasse die nur dazu dient Emails zu versenden.
Dieses Versenden geschieht ohne dass der User direkten einfluss darauf hat.

Wenn der User jetzt (nur als bsp) einen Eintrag in die Datenbank hinzufügt
so sollen einige andere User benachrichtigt werden. Damit man nach diesem
Eintrag nicht lange suchen muss hatte ich vor in die Email einen Link mitzusenden
auf den man einfach klicken kann und der User dann auch nur diesen Eintrag sieht.

das funktioniert soweit schon alles jedoch muss ich noch den link zu diesem Eintrag
generieren und ich will das so dynamisch wie möglich halten.

Darum die frage: Wie kann ich die Domain des Webservices innerhalb des Webservices herausfinden?

13.10.2010 - 09:28 Uhr

Hallo zusammen,

in silverlight ist es mittels HtmlPage.Document möglich die Hosting Page URL zu ermitteln.

HtmlPage.Document.DocumentUri.ToString() würde mir http://www.myhost.com/SilverlightApplication1.aspx liefern.

Wie kann ich diese URL aus dem WebService heraus ermitteln?
links oder stichworte zum weitersuchen würden mir reichen

01.10.2010 - 22:18 Uhr

Guten Abend,

ich würde dir empfehlen mal einen DataPager zu verwenden.

01.10.2010 - 18:50 Uhr

ich frage mich echt wie ein MainBoard das Gewicht tragen soll...
wie bekommen die das überhaupt ins haus? mit einem kran? XD

30.09.2010 - 10:09 Uhr

hallo,

ich weiss jetzt nicht ob es stimmt, aber wenn du eine *.metadata.cs datei in deinem projekt hast dann öffne mal diese.
Dort sind dann alle Eigenschaften aufgelistet. mittels [Display (Name = "MyName")] kannst du dann die Anzeige beeinflussen.

22.09.2010 - 15:59 Uhr

Nagut dann muss das wohl selber generieren bzw. generieren lassen.

Vielen dank an alle!

22.09.2010 - 11:41 Uhr

Hallo zusammen,

Vielen Dank für die Antworten!

Leider muss man bei den Lösungsvorschlägen die ich gefunden habe immer AutogenerateColumns auf False stellen und die ganzen Spalten selber erstellen.

Wenn jemand noch einen Vorschlag hat wäre ich sehr Dankbar!

21.09.2010 - 13:24 Uhr

soweit ich das feststellen konnte wird zuerst das LoadingRow event geschmissen und danach erst werden die Daten geladen.
Welches Event wird nach dem LoadingRow geschmissen? Die Doku listet mir die Events zwar auf nennt aber nicht die reihenfolge

21.09.2010 - 08:37 Uhr

keiner eine Idee? O.o

17.09.2010 - 13:39 Uhr

Hallo,

Handelt es sich dabei um silverlight?

dann würde ich sagen dass sich hier MEF (Managed Extensibility Framework
) sehr gut eignen würde

Hier findest du ein gutes tutorial dazu
Building the Hello MEF dashboard

17.09.2010 - 11:13 Uhr

Hallo zusammen,

Ich habe ebenfalls vor die Zelle eines DataGrids zu formatieren.
Ich nutze dazu silverlight wollte aber jetzt nicht extra einen Thread dafür erstellen.

Also zum Problem:

Ich habe zwei DataGrid auf meiner Form die eine Master/Detail Ansicht darstellen.
Das Datum wird im Amerikanischen Format dagestellt (09/17/2010 MM/TT/JJJJ)

Im Master abonniere ich folgendes Event um das Datum nach Deutschem Format darzustellen:


        private void dtgrdMaster_LoadingRow( object sender, DataGridRowEventArgs e )
        {
            try
            {
                DataGrid snd = (DataGrid)sender;
                MyDataBaseTableMaster temp = (MyDataBaseTableMaster)e.Row.DataContext;

                TextBlock lblDateTime = (TextBlock)snd.Columns[0].GetCellContent( e.Row );
                lblDateTime.Text = temp.AntragsDatum.ToString( _DateTimeFormatString ); 
                //Die ausgabe sieht dann folgendermaßen aus: 21.02.2010 15:48
            }
            catch ( Exception ex )
            {
                ErrorWindow.Show( ex );
            }
        }

Die selbe vorgehensweise funktioniert leider nicht im Detail-DataGrid


        private void dtgrdDetail_LoadingRow( object sender, DataGridRowEventArgs e )
        {
            try
            {
                DataGrid snd = (DataGrid)sender;
                MyDataBaseTableDetail tmp = (MyDataBaseTableDetail)e.Row.DataContext;

                TextBlock lblDateTime = (TextBlock)snd.Columns[0].GetCellContent( e.Row );
                lblDateTime.Text = tmp.Datum.ToString( _DateTimeFormatString );

                CheckBox chk = (CheckBox)snd.Columns[1].GetCellContent( e.Row );
                chk.Style = (Style)App.Current.Resources["CheckBoxStyle1"];
            }
            catch ( Exception ex )
            {
                ErrorWindow.Show( ex );
            }
        }

Der Style für die Checkbox hingegen wird angewendet. Hat jemand eine Idee warum das nicht funktioniert?
(Ja die Indexe wurden geprüft und enthalten die Richtigen Elemente)

16.09.2010 - 13:08 Uhr

Da Google die Seite automatisch von *.com auf *.de weiterleitet...

auch wenn man die Sprachoptionen ändert so passiert (bei mir jedenfalls) nichts.
Mit keinem Browser. BingInstant funktioniert wenigstens.

16.09.2010 - 12:00 Uhr

hmpf...
nach etwas suchen und einer Beispiel-Anwendung ist mir die Lösung ins Auge gesprungen

Im CodeBehind muss man nur folgendes machen:


            PagedCollectionView innerView = new PagedCollectionView( MyDomainDataSource.DataView[0] ).MyDetails );

            innerView.PageSize = 5;
            dtpgr.Source = innerView;

            DataGridDetails.ItemsSource = dtpgr.Source;
16.09.2010 - 11:17 Uhr

So mein neuer Rechner hat folgendes:

CPU: E8500 @ 4 GHz (stock: 3.16 GHz)
RAM: 4 GB DDR2 (5-5-5-15) @ 1125 (stock: 1066)
GraKa: 2x HD4890 (diese werden auch ohne übertaktung sehr warm ^^)
MB: ASUS Rampage Formula X48
HDD: 1 TB von Samsung,
500 GB von Seagate
Tower: NZXT Beta Evo
PSU: SuperFlower Amptac Pyramid 1kW (Das ding ist ein Kraftwerk!)

16.09.2010 - 09:43 Uhr

Hallo zusammen,

ich habe in silverlight eine Master/Detail-Ansicht mittels Datagrids realisiert.
Das funktioniert auch ganz gut.

Das problem was ich allerdings habe ist, dass es zu einem Master-Eintrag mehrere
Details gibt. Ich dachte mir ich nutze den DataPager um immer nur eine bestimmte
Menge anzeigen zu lassen. Jedoch bleibt der DataPager immer nur grau (als wäre IsEnabled = false).

Hier mal etwas Code:

So sieht die Source aus:


<sdk:DataPager Name="dtpgr" Background="{Binding Path=Background}" PageSize="5" Source="{Binding Source={StaticResource MyViewSource}}" />

und in den Resourcen habe ich folgendes:

<CollectionViewSource x:Key="MyViewSource" Source="{Binding Path=Data.MyDetails, ElementName=MyDomainDataSource}" />

Folgendes wurde auch schon probiert:

<sdk:DataPager Name="dtpgr" Background="{Binding Path=Background}" PageSize="5" Source="{Binding ElementName=MyDomainDataSource, Path=Data.CurrentItem.MyDetails}" />

Was mache ich falsch? ((Die namen wurden alle geändert)

16.09.2010 - 08:21 Uhr

das wird nicht gehen.

03.09.2010 - 11:39 Uhr

ich weiss nicht ob es für dich interessant sein könnte aber du kannst dir ja mal die
GetWindowLong und
SetWindowLong
APIs angucken.

02.09.2010 - 11:32 Uhr

Hier mein Ergebnis für alle die es mal brauchen sollten


<Style TargetType="CheckBox" x:Key="CheckBoxStyle1">
            <Setter Property="Background" Value="#FF448DCA"/>
            <Setter Property="Foreground" Value="#FF000000"/>
            <Setter Property="HorizontalContentAlignment" Value="Left"/>
            <Setter Property="VerticalContentAlignment" Value="Top"/>
            <Setter Property="Padding" Value="4,1,0,0"/>
            <Setter Property="BorderThickness" Value="1"/>
            <Setter Property="BorderBrush">
                <Setter.Value>
                <LinearGradientBrush EndPoint="0.5,1" StartPoint="0.5,0">
                    <GradientStop Color="#FFA3AEB9" Offset="0"/>
                    <GradientStop Color="#FF8399A9" Offset="0.375"/>
                    <GradientStop Color="#FF718597" Offset="0.375"/>
                    <GradientStop Color="#FF617584" Offset="1"/>
                </LinearGradientBrush>
                </Setter.Value>
            </Setter>

            <Setter Property="Template">
                <Setter.Value>
                    <ControlTemplate TargetType="CheckBox">
                        <Grid>
                            <Grid.ColumnDefinitions>
                                <ColumnDefinition Width="16" />
                                <ColumnDefinition Width="*" />
                            </Grid.ColumnDefinitions>

                            <VisualStateManager.VisualStateGroups>
                                <VisualStateGroup x:Name="CommonStates">
                                    <VisualState x:Name="Normal"/>
                                    
                                    <VisualState x:Name="Checked">
                                        <Storyboard>
                                            <DoubleAnimation Storyboard.TargetName="CheckIcon" Storyboard.TargetProperty="(UIElement.Opacity)" Duration="0" To="1"/>
                                        </Storyboard>
                                    </VisualState>

                                    <VisualState x:Name="Unchecked">
                                        <Storyboard>
                                            <DoubleAnimation Storyboard.TargetName="UnCheckIcon" Storyboard.TargetProperty="(UIElement.Opacity)" Duration="0" To="1"/>
                                        </Storyboard>
                                    </VisualState>

                                        <VisualState x:Name="Indeterminate">
                                        <Storyboard>
                                            <DoubleAnimation Storyboard.TargetName="IndeterminateIcon" Storyboard.TargetProperty="(UIElement.Opacity)" Duration="0" To="1"/>
                                        </Storyboard>
                                    </VisualState>
                                    
                                </VisualStateGroup>
                            </VisualStateManager.VisualStateGroups>
                            
                            <Grid HorizontalAlignment="Left" VerticalAlignment="Top">
                                <Rectangle x:Name="Background" Width="14" Height="14" RadiusX="1" RadiusY="1" Stroke="{TemplateBinding BorderBrush}" StrokeThickness="{TemplateBinding BorderThickness}" Fill="#FFFFFFFF" Margin="1"/>
                                <Rectangle x:Name="BackgroundOverlay" Fill="#FFC4DBEE" Opacity="0" Width="14" Height="14" RadiusX="1" RadiusY="1" StrokeThickness="1" Margin="1" Stroke="#00000000"/>
                                <Rectangle x:Name="BoxMiddleBackground" Width="10" Height="10" RadiusX="1" RadiusY="1" Fill="{TemplateBinding Background}" Stroke="#00000000" StrokeThickness="1"/>
                                <Rectangle x:Name="BoxMiddle" Width="10" Height="10" RadiusX="1" RadiusY="1" StrokeThickness="1" >
                                    <Rectangle.Stroke>
                                        <LinearGradientBrush EndPoint=".5,1" StartPoint=".5,0">
                                            <GradientStop Color="#FFFFFFFF" Offset="1"/>
                                            <GradientStop Color="#FFFFFFFF" Offset="0"/>
                                            <GradientStop Color="#FFFFFFFF" Offset="0.375"/>
                                            <GradientStop Color="#FFFFFFFF" Offset="0.375"/>
                                        </LinearGradientBrush>
                                    </Rectangle.Stroke>
                                    <Rectangle.Fill>
                                        <LinearGradientBrush StartPoint="0.62,0.15" EndPoint="0.64,0.88">
                                            <GradientStop Color="#FFFFFFFF" Offset="0.013" />
                                            <GradientStop Color="#F9FFFFFF" Offset="0.375" />
                                            <GradientStop Color="#EAFFFFFF" Offset="0.603" />
                                            <GradientStop Color="#D8FFFFFF" Offset="1" />
                                        </LinearGradientBrush>
                                    </Rectangle.Fill>
                                </Rectangle>
                                <Rectangle x:Name="BoxMiddleLine" Width="10" Height="10" RadiusX="1" RadiusY="1" Stroke="{TemplateBinding BorderBrush}" StrokeThickness="1" Opacity=".2"/>
                                
                                <Path x:Name="CheckIcon" 
                                      Margin="1,1,0,1.5" 
                                      Stroke="Green"
                                      Stretch="Fill" 
                                      Opacity="0" Width="10.5" Height="10" 
                                      Data="M102.03442,598.79645 L105.22962,597.78918 L106.78825,600.42358 C106.78825,600.42358 108.51028,595.74304 110.21724,593.60419 C112.00967,591.35822 114.89314,591.42316 114.89314,591.42316 C114.89314,591.42316 112.67844,593.42645 111.93174,594.44464 C110.7449,596.06293 107.15683,604.13837 107.15683,604.13837 z" 
                                      FlowDirection="LeftToRight"/>
                                
                                <Path x:Name="UnCheckIcon"
                                      Margin="3"
                                      Stroke="Red"
                                      StrokeThickness="2"
                                      Stretch="Fill"
                                      Opacity="0"
                                      Data="M 0 0 L 10 10 M 10 0 L 0 10"
                                      FlowDirection="RightToLeft" />

                                <Path x:Name="IndeterminateIcon" 
                                      Margin="3"
                                      Stroke="Blue"
                                      StrokeThickness="2"
                                      Stretch="Fill"
                                      Opacity="0"
                                      Data="M 0 2.5 A 5 2.5 0 1 1 5 5 L 5 8 M 5 10 L 5 12"
                                      FlowDirection="LeftToRight" />
                                
                                <Rectangle x:Name="DisabledVisualElement" RadiusX="1" RadiusY="1" Width="14" Height="14" Opacity="0" Fill="#FFFFFFFF"/>
                                <Rectangle x:Name="ContentFocusVisualElement" RadiusX="2" RadiusY="2" Stroke="#FF6DBDD1" StrokeThickness="1" Opacity="0" IsHitTestVisible="false" Width="16" Height="16" />

                            </Grid>
                            <ContentPresenter
                              Grid.Column="1"
                              x:Name="contentPresenter"
                              Content="{TemplateBinding Content}"
                              ContentTemplate="{TemplateBinding ContentTemplate}"
                              HorizontalAlignment="{TemplateBinding HorizontalContentAlignment}"
                              VerticalAlignment="{TemplateBinding VerticalContentAlignment}"
                              Margin="{TemplateBinding Padding}"/>

                        </Grid>
                    </ControlTemplate>
                </Setter.Value>
            </Setter>
        </Style>

Meine Quellen:
CheckBox Styles and Templates
Using Templates to Customize WPF Controls

01.09.2010 - 14:57 Uhr

nach checked style zu suchen habe ich nicht daran gedacht -.-

Ein Riesen Dankeschön!

01.09.2010 - 14:47 Uhr

Vielen dank!

werde ich mal versuchen.
bei fragen melde ich mich ^^

01.09.2010 - 14:36 Uhr

hallo zusammen,

ich habe Dr. Google schon um rat gefragt und auch schon das forum durchsucht.
Ist es möglich in einer CheckBox ein 'X' darzustellen falls der Wert false ist?
(Bei einem true sieht man ja einen hacken)

Links oder stichworte würden mir reichen

31.08.2010 - 15:33 Uhr

ich glaube (weiss es aber nicht) das hat was damit zu tun wie die Dienste geladen werden.

Du müsstest es schaffen dass dein Dienst zuerst geladen wird.

31.08.2010 - 10:59 Uhr

mal ne ganz stupide frage, aber willst du dass deine anwendung im Sys-Tray sichtbar ist oder in der taskbar?

falls zweistes gucke mal hier: Textfeld in die Windows TaskBar einfügen.

EDIT:
vllt auch etwas für dich: Battery Monitor

31.08.2010 - 09:56 Uhr

Guten morgen,

Hast du schonmal volgendes versucht:

-Das Image während der laufzeit ändern bzw ein anderes laden (andere/gleiche farben)
-Das Image zur Laufzeit laden (anfangs hat der Button kein Image (am besten die OnShown-Methode nutzen))

27.08.2010 - 10:42 Uhr

ich habe für Bottom-Up gestimmt da das Fundament auf dem alles weitere aufsetzt stabil sein muss.

genau so wie beim Hausbau, dort fängt man auch nicht zuerst mit dem Dach an XD

Wenn das Fundament stabil ist kann es fast alles tragen. so sehe ich das aber dennoch kommt es zu Situationen wo man auch mal andersherum rangehen muss

26.08.2010 - 16:16 Uhr

hast du schonmal versucht das Panel im FormSizeChanged-Event des Parent zu ändern? Wenn ja, hast du da mit dem debugger die werte überprüft?

26.08.2010 - 15:54 Uhr

Hallo,

das DataGrid hat ein BindingValidationError-Event. Du könntest das dort abfangen

26.08.2010 - 15:12 Uhr

ups sry
hatte ganz vergessen dass C# nicht so toll ist wie VB.Net 😉

was du machen könntest um die ganzen funktionen zu bekommen ist die Microsoft.VisualBasic zu referenzieren.

das würde ich dir aber nur als notlösung empfehlen.

26.08.2010 - 14:59 Uhr

*hust* ein converter hätte dir den code übersetzten können

private string GetCharFromKey(int KeyCode)
{
	string functionReturnValue = null;
	byte[] KeyBoardState = new byte[256];
	long Out = 0;
	if (GetKeyboardState(KeyBoardState[0]) < 0) {
		if (ToAscii(KeyCode, 0, KeyBoardState[0], Out, 0) < 0) {
			if (Out <= 255) {
				functionReturnValue = Strings.Chr(Out);
			} else {
				//GetCharFromKey =
				Strings.Left(Strings.StrConv(Strings.ChrW(Out), vbUnicode), 1);
				functionReturnValue = Strings.Left(Strings.StrConv(Strings.ChrW(Out), VbStrConv.None), 1);
			}
		} else {
			functionReturnValue = "";
		}
	} else {
		functionReturnValue = "";
	}
	return functionReturnValue;
}
24.08.2010 - 11:12 Uhr

Das stimmt aber erst nach dem Google druck gemacht worden ist.
vorher konnte man alles klar sehen (in USA soweit ich das gehört habe (Radio))

24.08.2010 - 10:59 Uhr

Im prinzip habe ich auch nichts gegen GSV aber anfangs ging es nicht um die Häuser sondern um andere Daten wie Kennzeichen.
klar sieht man davon genug wenn man durch die straßen geht aber das problem hier ist ja, dass es dann jeder von überall machen kann.
ich bin mir nicht sicher ob der einfache User das Kennzeichen dann einer Person zuordnen kann aber andere leute bestimmt
So hätte man schonmal einen Namen, durch facebook und co. auch noch ein Foto und vllt sogar die adresse...

vllt sagt der name Bashiok einigen leuten hier was
Verärgerte Spieler sammeln Privatdaten von "Bashiok"

EDIT: link hinzugefügt

23.08.2010 - 10:27 Uhr

nun da du ja sagst dass deine registry werte nicht direkt übernommen werden kannst du ja mal folgendes versuchen

Registry Werte selber setzen und SOFORT übernehmen

btw du solltest wirklich versuchen der registry fern zu bleiben...

19.08.2010 - 07:43 Uhr

ich könnte dir ohost.de empfehlen. zwar nicht werbefrei aber wenn du genug leute anwerbst bekommst du keine Werbung mehr angezeigt.

16.08.2010 - 12:20 Uhr

ohh sry hab mich wohl verlesen -.-

16.08.2010 - 12:03 Uhr

Das Control ist im Toolkit (April 2010) enthalten

10.08.2010 - 12:04 Uhr

hier sind mal zwei seiten von codeproject, vllt helfen sie dir auf die sprünge

Easy_PDF_Programming
TallComponents

10.08.2010 - 11:35 Uhr

dabei handelt es sich um einen ValidationError und sobald da kiene Fehler auftauchen wird erst das changed-event abgefeuert.

hier ist ein beispiel aus der MSDN wo sie zeigen wie man die Eingabe des Users überprüft

How to: Validate Input with the Windows Forms DataGrid Control
(ist auf englisch)

09.08.2010 - 13:38 Uhr

ist zwar nicht genau das was du suchst aber dürfte dich weiterbringen

Registry Werte selber setzen und SOFORT übernehmen

09.08.2010 - 11:20 Uhr

habe es mittlerweile selber gelöst.

hier die Lösung:


            [RegularExpression( @"^\d+(,\d\d)?$" )]
            public float Preis { get; set; }

(man muss den Punkt aus dem ersten post durch einen komma (ohne Backslash davor) ersetzten)

06.08.2010 - 14:36 Uhr

also wenn das mal nicht verdammt günstig ist...

06.08.2010 - 14:35 Uhr

nur zur vervollständigung:
hast du noch etwas anderes gemacht als die schritte die hier gepostet worden sind?

06.08.2010 - 12:04 Uhr

und? immer noch fehler? gleiche fehlermeldung?
Funktionierts? so wie es soll?

mehr Infos bitte ^^

06.08.2010 - 11:13 Uhr

hmm blöd wäre ja auch zu einfach gewesen was? XD

naja ich hab das hier gefunden, hoffe es hilft dir
could-not-load-file-or-assembly-or-one-of-its-dependencies-access-is-denied