Home Page
Articoli
Tips & Tricks
News
Forum
Archivio Forum
Blogs
Sondaggi
Rss
Video
Utenti
Chi Siamo
Contattaci
Username:
Password:
Login
Registrati ora!
Recupera Password
Home Page
Stanze Forum
App. WinForms / WPF .NET
Immagine in CommandBarButton
mercoledì 15 febbraio 2006 - 12.41
Elenco Threads
Stanze Forum
Aggiungi ai Preferiti
Cerca nel forum
Juwan
Profilo
| Junior Member
76
messaggi | Data Invio:
mer 15 feb 2006 - 12:41
Salve ragazzi, qualcuno sa per caso come inserire un'immagine,
all'interno di un pulsante CommandBarButton?
Ho visto che c'è la proprietà Picture, ma vuole l'immagine come una
stdole.IPictureDisp, e non so come fare, per associare a questo tipo
un'immagine, qualcuno sa aiutarmi?
Brainkiller
Profilo
| Guru
7.999
messaggi | Data Invio:
mer 15 feb 2006 - 14:19
>Salve ragazzi, qualcuno sa per caso come inserire un'immagine,
>all'interno di un pulsante CommandBarButton?
>Ho visto che c'è la proprietà Picture, ma vuole l'immagine come
>una
>stdole.IPictureDisp, e non so come fare, per associare a questo
> tipo un'immagine, qualcuno sa aiutarmi?
Ciao Juwan,
è abbastanza difficile darti una mano su Visual Studio for Office, perchè io personalmente non lo uso e non conosco nessuno nel settore IT che lo usi. Quindi non saprei neanche consigliarti su dove rivolgerti se non alla documentazione del prodotto.
Ciao
David De Giacomi
Microsoft MVP
http://blogs.dotnethell.it/david/
Juwan
Profilo
| Junior Member
76
messaggi | Data Invio:
mer 15 feb 2006 - 14:57
Ho cercato in rete ed ho trovato, un pò di codice che dovrebbe risolvere il mio problema, ma a quanto pare c'è qualcosa che non funziona, visto che l'immagine non viene caricata, all'interno del CommandBarButton, anche se stranamente non viene segnalato nessun errore, questo è comunque il codice.
private void ThisDocument_Startup(object sender, System.EventArgs e)
{
Office.CommandBar newCommandBar = null;
Office.CommandBarButton cmdButton = null;
newCommandBar = this.CommandBars.Add("Command Bar Name", Microsoft.Office.Core.MsoBarPosition.msoBarTop, false, true);
cmdButton = (Office.CommandBarButton)newCommandBar.Controls.Add(Microsoft.Office.Core.MsoControlType.msoControlButton, System.Type.Missing, System.Type.Missing, System.Type.Missing, true);
cmdButton.Caption = "Show ActionPane";
cmdButton.Click += new Microsoft.Office.Core._CommandBarButtonEvents_ClickEventHandler(cmdButton_Click);
cmdButton.DescriptionText = "Show ActionPane";
cmdButton.Style = MsoButtonStyle.msoButtonCaption;
cmdButton.Picture = getImage();
cmdButton.Tag = "ControlTag";
cmdButton.Visible = true;
newCommandBar.Visible = true;
}
private stdole.IPictureDisp getImage()
{
stdole.IPictureDisp tempImage = null;
try
{
Image img = Image.FromFile
(System.Environment.GetFolderPath
(System.Environment.SpecialFolder.Personal)
+ @"\struttura.gif");
// System.Drawing.Icon newIcon = Properties.Resources.Icon1;
ImageList newImageList = new ImageList();
newImageList.Images.Add(img);
tempImage = ConvertImage.Convert(newImageList.Images[0]);
}
catch (Exception ex)
{
MessageBox.Show(ex.Message+ex.StackTrace);
}
return tempImage;
}
sealed public class ConvertImage : System.Windows.Forms.AxHost
{
private ConvertImage()
: base(null)
{
}
public static stdole.IPictureDisp Convert
(System.Drawing.Image image)
{
return (stdole.IPictureDisp)System.
Windows.Forms.AxHost
.GetIPictureDispFromPicture(image);
}
}
Torna su
Stanze Forum
Elenco Threads
Partecipa anche tu! Registrati!
Hai bisogno di aiuto ?
Perchè non ti registri subito?
Dopo esserti registrato potrai chiedere
aiuto sul nostro
Forum
oppure aiutare gli altri
Consulta le
Stanze
disponibili.
Registrati ora !