|
Thanks a million Arun!!! This solved by problem. I had tried this earlier but somehow was not able to get through but now it is working. thx again..!!!
|
|
|
|
|
Happy to see that your problem solved.
|
|
|
|
|
Samar Can u try with the selectedItem .......
|
|
|
|
|
Hi sunil i tried with selecteditem but it is showing me null as there is nothing selected.
|
|
|
|
|
Ok can u loop throught the source that u have binded and get the excat object that satisfy u r requirement and make that object as the selected item .Beacuse the data binding concept is something different in WPF
|
|
|
|
|
I think selected item was again throwing me null or something. I do not remember correctly now. But i got thru with the problem as below. Thank you very much for your help.
omboboxId.SelectedValue = yourvalue;
|
|
|
|
|
I need to access a WPF object, Grid, in a class. But I am not able to do so, as it is inaccessible. I need to change the visibility of a Grid object (WPF_Grid) based on certain conditions/values of class.
My Main Code:
public partial class MainWindow : Window
{
public TempDataClass tDataClass;
public MainWindow()
{
this.InitializeComponent();
tDataClass = new TempDataClass();
}
private void SomeMainFunction()
{
if (SomeMainCondition1)
{
tDataClass.someClassFunction1();
}
else
{
tDataClass.someClassFunction2();
}
}
}
My Class Code:
public class TempDataClass : DependencyObject
{
public FolderFilingDataClass()
{
}
public void someClassFunction1()
{
if (SomeClassCondition1)
{
WPF_Grid.Visibility = Visibility.Hidden;
}
}
public void someClassFunction2()
{
if (SomeClassCondition2)
{
WPF_Grid.Visibility = Visibility.Visible;
}
}
}
One way around is passing objects as parameter, but is there any better way? I am sure, there is...
|
|
|
|
|
you can create a property in TempDataClass and set it before tDataClass.someClassFunction1();
|
|
|
|
|
Sorry! Not clear for me...
|
|
|
|
|
Passing the parameter and my posted solution having the same effect.
Create a property in your TemplateClass to hold the object and set this object from the main class where you are calling the method from.
|
|
|
|
|
Ok, Right! Got it
|
|
|
|
|
While the other answer you got will work correctly, it's not the WPF-ish way of doing it. Ideally you should bind the grid's Visibility to a public property on the data class where you also need to implement INotifyPropertyChanged. If this property is a bool, you'd also need to use a binding converter (to convert from bool to Visibility).
|
|
|
|
|
Thanks Nishant for you reply! Yes, I understand your point. This Grid and Visibility property was just a small example of my problem. Sometime I have a canvas and need to addChildren, removeChildren and many more thing from class. So, basically all drawing methods implemented inside class, while no objects accessible. In that case, i am really not sure how binding will work.
|
|
|
|
|
Ok, the name TempDataClass led me to believe that it was some kind of Model class. So it seems it's merely a UI helper class that dynamically manipulates your UI. In which case it's reasonable to just pass in the Grid instance to it and access it that way.
|
|
|
|
|
I am having trouble with a Datagrid within a stackpanel. I put a stackpanel around the datagrid because I want the datagrid size to collapse to accordingly to the amount of rows I bring back. My problem lies when I bring back a lot of rows because it displays everything in the datagrid and the datagrids scrollbar never shows. I know I could put a maxheight on the datagrid but if I need to take into account the actual size of the window because of screen resolution and size. If I put a maxheight on the datagrid it would not look right when the screen is maximized, there would be a lot of extra white space. I want the datagrid to expand proportionately to the bottom of the screen. I am using the MVVM pattern.
<Grid x:Name="PatientSearchResultsGrid" Grid.Row="2" Margin="0" >
<Grid.ColumnDefinitions>
<ColumnDefinition Width="*"/>
</Grid.ColumnDefinitions>
<Grid.RowDefinitions>
<RowDefinition Height="*"/>
</Grid.RowDefinitions>
<StackPanel Grid.Row="1" Margin="0,12,0,46" >
<Grid Margin="0,3,4,23" Panel.ZIndex="596" x:Name="LayoutGrid" Visibility="{Binding HideShowDatagrid, Converter={StaticResource MyBooleanToVisibilityConverter}}" >
<Grid.ColumnDefinitions>
<ColumnDefinition Width="*"/>
<ColumnDefinition Width="Auto"/>
</Grid.ColumnDefinitions>
<Grid.RowDefinitions>
<RowDefinition Height="Auto"/>
</Grid.RowDefinitions>
<dg:DataGrid
Cursor="Hand"
Grid.Row="1"
AlternationCount="2"
SelectedItem="{Binding SelectedPerson}"
ItemsSource="{Binding SelectedPeople}"
Style="{DynamicResource DataGridStyle}"
AutoGenerateColumns="False"
x:Name="PatientSearchResultsDG"
Margin="2,-17.8,3,1.7" BorderThickness="1,0,1,1" BorderBrush="#FF202020" >
<dg:DataGrid.Resources>
<Style TargetType="{x:Type dg:DataGridRowHeader}">
<Setter Property="Background" Value="Transparent"/>
</Style>
</dg:DataGrid.Resources>
<dg:DataGrid.Columns>
<dg:DataGridTextColumn Binding="{Binding Name}" IsReadOnly="True" x:Name="PatientName" Width="*" Header="Name" />
<dg:DataGridTextColumn Binding="{Binding SidNumber}" IsReadOnly="True" x:Name="SID" Width="*" Header="SID" />
<dg:DataGridTextColumn Binding="{Binding InmateNumber}" IsReadOnly="True" x:Name="InmateNum" Width="*" Header="Inmate #" />
<dg:DataGridTextColumn Binding="{Binding Sex}" IsReadOnly="True" x:Name="Sex" Width="*" Header="Sex" />
<dg:DataGridTextColumn Binding="{Binding DateOfBirth, StringFormat=' \{0:MM/dd/yyyy\}'}" IsReadOnly="True" x:Name="DOB" Width="*" Header="Date of Birth" />
<dg:DataGridTextColumn Binding="{Binding FacilityName}" IsReadOnly="True" x:Name="Facility" Width="*" Header="Facility" />
<dg:DataGridTextColumn Binding="{Binding Housing}" IsReadOnly="True" x:Name="Housing" Width="*" Header="Housing" />
<dg:DataGridTextColumn Binding="{Binding Active}" IsReadOnly="True" x:Name="Active" Width="*" Header="Active" />
<dg:DataGridTextColumn Binding="{Binding Locked}" IsReadOnly="True" x:Name="Locked" Width="*" Header="Locked" />
</dg:DataGrid.Columns>
</dg:DataGrid>
</Grid>
</StackPanel>
</Grid>
|
|
|
|
|
Member 4540564 wrote: <grid.rowdefinitions>
<rowdefinition height="Auto">
Change the Height to * and then try again.
|
|
|
|
|
I was having the same problem and solved it by replacing the StackPanel with a Grid. It looks as though the StackPanel does not constrain the height of its children while the Grid does.
|
|
|
|
|
Hi
I am trying to change node indent for treeview control in wpf, but found that it has no NodeIndent property in wpf.
Does anyone who knows how to change the node indent?
jesse
|
|
|
|
|
|
Hi Peoples,
Got an doubt that,
i created one WPF browser application deployed in and UNC path.
i tried accessing the same from my IE browser its throwing me the error that
The application cannot be deployed because it is not trusted.
I googled and found that i should create some certification to do the same..
is it requires that certification neccessarily to be created or is there any other way???
if its mandatory can u please explain in simple steps..
Thanks in Advance...
|
|
|
|
|
Hi I have googled on net and found there about this issue that
All standalone WPF applications, whether installed by Windows Installer, XCopy, or ClickOnce, require FullTrust permissions, irrespective of their zone. This is because Window requires unmanaged code permission (eg SecurityPermission(SecurityPermissionFlag.UnmanagedCode)).
http://michaelweinhardt.spaces.live.com/blog/cns!BCB75D26D609CF01!132.entry[^]
Parwej Ahamad
ahamad.parwej@gmail.com
|
|
|
|
|
Hi Mr, parvej.
I tried reading the blog you mentioned .. i understand what you are coming to say..
but i cant work out with that..
i created one xbab application .if i publish the same and tried browsing from ie, its saying that the application cannot be deployed because it is not trusted..
Can you helm me regarding the same
|
|
|
|
|
|
Hi parwej,
thanks for your mail reply..
i tried with that steps and found my self working. though i went to the same site previous itself i was bit concerned to do with out certificate..
any how i tried but was not possible
its explained that i need to add the certificate all over the machines i am using(client).
is that mandatory?
and is it possible to by pass that and can use like asp.net applications?
|
|
|
|
|
I believe certificate need to install on all client machine because you are using trusted application deployement. Due to short time I am unable explain everything here. Jus find below link you will got your all query answer.
http://msdn2.microsoft.com/en-us/library/01daf08f.aspx[^]
Thanks, Feel free to post here for further queries, If possible I will give you.
Parwej Ahamad
ahamad.parwej@gmail.com
|
|
|
|