|
Hi,
It is possible to have a common class for two windows? i.e is it possible to have the event handling code common for both the windows as my windows are almost alike.
Thanks
|
|
|
|
|
If you follow a pattern such as MVVM, this becomes remarkably trivial. Take a look at my article here[^] for code that behaves in just this way.
"WPF has many lovers. It's a veritable porn star!" - Josh Smith As Braveheart once said, "You can take our freedom but you'll never take our Hobnobs!" - Martin Hughes.
My blog | My articles | MoXAML PowerToys | Onyx
|
|
|
|
|
Hi,
I am student working on a project for making a neural network simulator in IIT Bombay.
I have to create an application which takes in data from a windows form and then creates a network. The network is depicted in terms of spheres and links between them. Basically a neural network. To take in the 3D objects and making it move according to camera is possible in Expression Blend. But i have to take in the input from the windows form. i.e. i want the alter the network design by user input.If the user adds a unit a sphere is created on the screen(the network window). Can any one please suggest me if its possible and if yes how can i merge the 2 applications???
|
|
|
|
|
Is your 'windows app' a WPF app ? It needs to be.
Christian Graus
Driven to the arms of OSX by Vista.
"! i don't exactly like or do programming and it only gives me a headache." - spotted in VB forums.
I can do things with my brain that I can't even google. I can flex the front part of my brain instantly anytime I want. It can be exhausting and it even causes me vision problems for some reason. - CaptainSeeSharp
|
|
|
|
|
Suppose, I opened my Main Window and from that I opened another sub window.
Now on click of the submit button inside my subWindow .... I want to change some properties which are available on MainWindow. How can I pass values from my sub window to the main window or viz...
I didn't find the stub.... Can anyone please help me ASAP?
Waiting for that...
Regards,
- Kunal Chowdhury ( My Blog)
|
|
|
|
|
A simple way to do this is have a class that contains the properties that you want updating, and then expose this as a property in your window. Assuming you're using binding, all you need to do then is update your main window model with the values in this class (assuming you're implementing INotifyPropertyChanged to notify that the property is updated, and hence trigger a refresh).
"WPF has many lovers. It's a veritable porn star!" - Josh Smith As Braveheart once said, "You can take our freedom but you'll never take our Hobnobs!" - Martin Hughes.
My blog | My articles | MoXAML PowerToys | Onyx
|
|
|
|
|
well herez the scenario... i have a grid in wpf,n a add new row button, which generates a new row with a few controls like textbox,check box few buttons ,,,,,, am suppposed to add a "up"button and a "down" button.....which moves the row up or down by one level... n obviously the first up n last down button are disabled.... i have done upto this point, am even eble to retrieve the row number of the button i click... but after dat im lost... how do i swap a whole row??? please help... and thank you.... in advance!!! im having troubles with the indexing... im new to wpf....
have a great day
|
|
|
|
|
OK - if it's an observable collection, then you can just swap the items in the collection and the control will update itself. Otherwise, I guess you need to copy a whole row, or swap values between rows.
and like I said in the C# forum, this is a programming forum, not a meeting place for punk rap wannabes. We don't mind people who struggle with English, but 'dat' is not a word, nor is 'herez' or 'n'. n is a letter. You have a full keyboard, so use it.
Christian Graus
Driven to the arms of OSX by Vista.
"! i don't exactly like or do programming and it only gives me a headache." - spotted in VB forums.
I can do things with my brain that I can't even google. I can flex the front part of my brain instantly anytime I want. It can be exhausting and it even causes me vision problems for some reason. - CaptainSeeSharp
|
|
|
|
|
i apologise for my language... as i was in a hurry i typed the message as i text it... i had not realized it until you pointed it out,...
and thank you for your suggestion i will try it out....
(is my language ok now!!!!)
have a great day....
|
|
|
|
|
*grin* a lot of people fall into text speak, but this is not the place for it. The ObservableCollection should solve your issue, but if it doesn't just post again if you're still stuck.
Christian Graus
Driven to the arms of OSX by Vista.
"! i don't exactly like or do programming and it only gives me a headache." - spotted in VB forums.
I can do things with my brain that I can't even google. I can flex the front part of my brain instantly anytime I want. It can be exhausting and it even causes me vision problems for some reason. - CaptainSeeSharp
|
|
|
|
|
hi ,
well as for copying the row into another new one there are so many validations to handle, (i think)... i am very new to wpf, and so can u please tell me a easy way to do it...
thank you (in advance)...
have a great day....
|
|
|
|
|
Christian Graus wrote: this is a programming forum, not a meeting place for punk rap wannabes
Yo homey - don't be dissin'!
Peace out,
Mark
Mark Salsbery
Microsoft MVP - Visual C++
|
|
|
|
|
hello I used Wpf.Themes library from CodePlex
in My Application
When I apply a theme every thing works well except that when I open a new Window
It appear empty for the first time !!!!!!!! without any control
until I move the window to other position in screen the window Update its Layout
why's that I watched the OutPut Window and Found the Exception that thrown to the
Application and Iused to write it to the Application Output .
what ever this is the Exception and its inner Exception
could you tell how can I solve it or any usefull link
Error : Cannot animate the 'Visibility'
property on a 'System.Windows.Controls.Border'
using a 'System.Windows.Media.Animation.ObjectAnimationUsingKeyFrames'.
For details see the inner exception.
--Inner : The animation(s) applied to the 'Visibility'
property calculate a current value of 'Visible',
which is not a valid value for the property.
You have To Search About The Truth Of Your Life
Why Are you Here In Life ?
|
|
|
|
|
Hi,
I am working on a application in which I have to get the images attached to mail of a particular mail Id. I came to know that that we can access a Email Id by using Pop3. In this we should be able configure any mail server Email Id.
If any one have any idea on this please reply me. If you have any idea to do this in WPF or Silver or both please reply me.
Thanks in advance.
|
|
|
|
|
This is NOT a WPF question.
I am not sure if this will help - 1[^], 2[^] or 3[^]
|
|
|
|
|
Hi All,
I am implementing an image slider almost similar to this: http://www.rai.tv/dl/RaiTV/homeTv.html[^]
Is it possible to change the image size and dimension when they are moved along the extreme left hand side or right hand side? I tried using the ScrollViewer control with static images, but that doesn't help to get the feel as in the link above.
Please help. Thanks.
Sunil
|
|
|
|
|
Hi,
We are doing some grid evaluations for a project. I am trying out the DataGrid from Microsoft (the WPF Toolkit). We have it bound to an IOBservableCollection, and are simulating lots of updates to the data. The grid refresshes fine in most case. But if I have the grid sorted ona column, and I change the value of the column in the data, the grid data udpates but it does not re-apply the sort. It just shows the column as sorted but the values.
I think this is because a property change on an individual item does not fire a collection changed event in the ObservableCollection. If I fire a collectionChanged event manually the grid does update. I can also make it sort by replacing the object itself. But both these appraches are very CPU expensive.
So what is teh recommended way to reapply the sort on the grid on a data update?
thanks and regards,
Bijesh
|
|
|
|
|
Bijesh wrote: I think this is because a property change on an individual item does not fire a collection changed event in the ObservableCollection.
Right - only changes to the collection, not changes to items in the collection.
For change notifications on items, you can implement INotifyPropertyChanged[^] on
the item class(es).
Mark Salsbery
Microsoft MVP - Visual C++
|
|
|
|
|
Hi Mark, Thanks for the response.
WE have implemented the INotifyPropertyCHanged on the item class. But unfortunately the grid does not look like it is updating the sorting on the event. I guess ideally it should handle the PropertyChanged event and check whether the changed column is being sorted on and then update the sorting, but it isn't.
I also tested this on the DAtaGrid sample from here:
http://blogs.msdn.com/vinsibal/archive/2008/10/22/wpf-datagrid-and-the-wpftoolkit-have-released.aspx[^]
..and got the same result. If I manually edit onthe grid it re-sorts because it fires a CollectionChanged event there I Think. But if I directly edit thte data in code it updates the value on the grid but does to update the sorting..
|
|
|
|
|
I would ask on the toolkit site and/or post it as an omitted feature.
Mark
Mark Salsbery
Microsoft MVP - Visual C++
|
|
|
|
|
Thanks I will do that. If you have any opinion on what is the best way to refresh a grid, or refresh a collection please let me know, thanks..
Bijesh
|
|
|
|
|
The control should really do that itself.
Off the top of my head, things to try:
1) DataGrid.InvalidateProperty()
2) detach and re-attach the collection ( )
The control's not officially released so it would be nice to catch
stuff like this before it goes into the .NET framework
Mark Salsbery
Microsoft MVP - Visual C++
|
|
|
|
|
From what I've tried so far, gettng the efault view of the collection is what work, but the performance is not great. detaching and attaching, seems very wrong, but I might go for it, as it has the advantage that I can effectively suspend the grid, do a batch of updates to the underlying data and then refresh the grid, rather than have the grid continuously update itself..
Again thanks for the responses...
Bijesh
modified on Tuesday, June 23, 2009 8:40 AM
|
|
|
|
|
OK - this is odd. I knocked up a quick sample application and sorted on a column - then I started changing the values in the sorted column and it refreshed and changed the sort order in every case. Here's the sample code:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Windows;
using System.Windows.Controls;
using System.Windows.Data;
using System.Windows.Documents;
using System.Windows.Input;
using System.Windows.Media;
using System.Windows.Media.Imaging;
using System.Windows.Navigation;
using System.Windows.Shapes;
using System.Windows.Media.Media3D;
using System.ComponentModel;
using System.Collections.ObjectModel;
namespace ModelVisualTest
{
public partial class Window1 : Window
{
private ObservableCollection<Person> _people;
public Window1()
{
InitializeComponent();
}
private void BuildModel()
{
_people = new ObservableCollection<Person>();
_people.Add(new Person() { Forename = "Peter", Surname = "O'Hanlon", Age = 30 });
_people.Add(new Person() { Forename = "Josh", Surname = "Walton", Age = 29 });
_people.Add(new Person() { Forename = "William", Surname = "Hill", Age = 28 });
_people.Add(new Person() { Forename = "Joseph", Surname = "Brannagan", Age = 36 });
dataGrid1.ItemsSource = _people;
}
private void Window_Loaded(object sender, RoutedEventArgs e)
{
BuildModel();
}
}
public class Person : INotifyPropertyChanged
{
private string _forename;
public string Forename
{
get { return _forename; }
set
{
if (_forename != value)
{
_forename = value;
OnChanged("Forename");
}
}
}
private string _surname;
public string Surname
{
get { return _surname; }
set
{
if (_surname != value)
{
_surname = value;
OnChanged("Surname");
}
}
}
private int _age;
public int Age
{
get { return _age; }
set
{
if (_age != value)
{
_age = value;
OnChanged("Age");
}
}
}
#region INotifyPropertyChanged Members
public event PropertyChangedEventHandler PropertyChanged;
protected virtual void OnChanged(string p)
{
PropertyChangedEventHandler handler = PropertyChanged;
if (handler != null)
{
handler(this, new PropertyChangedEventArgs(p));
}
}
#endregion
}
} The XAML is simply this:
<Window x:Class="ModelVisualTest.Window1"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
Title="Window1" Height="300" Width="300" xmlns:my="http://schemas.microsoft.com/wpf/2008/toolkit"
Loaded="Window_Loaded" >
<Grid>
<my:DataGrid x:Name="dataGrid1" AutoGenerateColumns="True" />
</Grid>
</Window>
"WPF has many lovers. It's a veritable porn star!" - Josh Smith As Braveheart once said, "You can take our freedom but you'll never take our Hobnobs!" - Martin Hughes.
My blog | My articles | MoXAML PowerToys | Onyx
|
|
|
|
|
Hmm that is really odd.. Thanks for posting the code sample. I'll try it out at the earliest.. (unfortunately had to get into some other work for now)
|
|
|
|