实例介绍
PhotoSuru是微软的一个非常漂亮的WPF演示案例,可以在线或离线浏览由服务器提供的图片服务。源码下载后直接编译运行即可看到炫丽的效果,非常适合学习WPF。
【实例截图】
【核心代码】
ScePhotoViewer
└── ScePhotoViewer
├── EffectLibrary
│ ├── Converters
│ │ ├── SizeToDoubleConverter.cs
│ │ └── VectorToDoubleConverter.cs
│ ├── EffectLibrary.csproj
│ ├── EffectLibrary.sln
│ ├── Effects
│ │ ├── BandedSwirlEffect.cs
│ │ ├── BrickMasonEffect.cs
│ │ ├── BulgeAndPinchEffect.cs
│ │ ├── DirectionalBlurEffect.cs
│ │ ├── InvertColorEffect.cs
│ │ ├── MagnifyEffect.cs
│ │ ├── MonochromeEffect.cs
│ │ ├── RippleEffect.cs
│ │ ├── SmoothMagnifyEffect.cs
│ │ ├── SwirlEffect.cs
│ │ └── ZoomBlurEffect.cs
│ ├── Global.cs
│ ├── Properties
│ │ └── AssemblyInfo.cs
│ ├── ShaderBytecode
│ │ ├── bandedSwirl.fx.ps
│ │ ├── brickMason.fx.ps
│ │ ├── bulgeAndPinch.fx.ps
│ │ ├── DirectionalBlur.fx.ps
│ │ ├── InvertColor.fx.ps
│ │ ├── magnify.fx.ps
│ │ ├── monochrome.fx.ps
│ │ ├── Ripple.fx.ps
│ │ ├── SmoothMagnify.fx.ps
│ │ ├── swirl.fx.ps
│ │ └── ZoomBlur.fx.ps
│ ├── ShaderSource
│ │ ├── bandedSwirl.fx
│ │ ├── brickMason.fx
│ │ ├── bulgeAndPinch.fx
│ │ ├── CompileAllShaders.cmd
│ │ ├── DirectionalBlur.fx
│ │ ├── fxc.exe
│ │ ├── InvertColor.fx
│ │ ├── magnify.fx
│ │ ├── monochrome.fx
│ │ ├── Ripple.fx
│ │ ├── SmoothMagnify.fx
│ │ ├── swirl.fx
│ │ └── ZoomBlur.fx
│ ├── Themes
│ │ └── Generic.xaml
│ └── UI
│ ├── BandedSwirlControl.xaml
│ ├── BandedSwirlControl.xaml.cs
│ ├── BrickMasonControl.xaml
│ ├── BrickMasonControl.xaml.cs
│ ├── BulgeAndPinchControl.xaml
│ ├── BulgeAndPinchControl.xaml.cs
│ ├── EffectControlResources.xaml
│ ├── EffectExpander.cs
│ ├── InvertColorControl.xaml
│ ├── InvertColorControl.xaml.cs
│ ├── MonochromeControl.xaml
│ ├── MonochromeControl.xaml.cs
│ ├── RippleShaderControl.xaml
│ ├── RippleShaderControl.xaml.cs
│ ├── SmoothMagnifyControl.xaml
│ ├── SmoothMagnifyControl.xaml.cs
│ ├── StretchBox.cs
│ ├── SwirlControl.xaml
│ └── SwirlControl.xaml.cs
├── References
│ ├── FlickrNet.dll
│ ├── Interop.WIA.dll
│ ├── Microsoft.VC80.CRT.manifest
│ ├── msvcr80.dll
│ ├── PresentationCore.dll
│ ├── PresentationFramework.Aero.dll
│ ├── PresentationFramework.dll
│ ├── SceDfshim.exe
│ ├── sqlceer35EN.dll
│ ├── sqlceme35.dll
│ ├── sqlceqp35.dll
│ ├── sqlcese35.dll
│ ├── SubscriptionCenter.Ipc.dll
│ ├── SubscriptionSync.dll
│ ├── System.Data.SqlServerCe.dll
│ ├── UIAutomationProvider.dll
│ └── WindowsBase.dll
├── ScePhoto
│ ├── Controls
│ │ ├── BreadcrumbBox.cs
│ │ ├── CommandButton.cs
│ │ ├── LargePhotoThumbnailControl.cs
│ │ ├── MainContentContainer.cs
│ │ ├── PhotoBaseControl.cs
│ │ ├── PhotoExplorerBaseNode.cs
│ │ ├── PhotoExplorerControl.cs
│ │ ├── PhotoExplorerPhotoNode.cs
│ │ ├── PhotoExplorerTagNode.cs
│ │ ├── PhotoGalleryAlbumSelector.cs
│ │ ├── PhotoThumbnailControl.cs
│ │ └── SizeTemplateControl.cs
│ ├── Data
│ │ ├── Channel.cs
│ │ ├── DataManager.cs
│ │ ├── DataObjectCollection.cs
│ │ ├── FeedItem.cs
│ │ ├── GuidStore.cs
│ │ ├── HomePhotoAlbum.cs
│ │ ├── Item.cs
│ │ ├── MasterFeedContent.cs
│ │ ├── MissingItemError.cs
│ │ ├── NavigatableObject.cs
│ │ ├── NoDataAvailableError.cs
│ │ ├── PhotoAlbumCollection.cs
│ │ ├── PhotoAlbum.cs
│ │ ├── PhotoCollection.cs
│ │ ├── Photo.cs
│ │ ├── PhotoGalleryCollection.cs
│ │ ├── PhotoGallery.cs
│ │ ├── PhotoSlideShow.cs
│ │ ├── SearchPhotoAlbum.cs
│ │ └── TagStore.cs
│ ├── DoubleUtil.cs
│ ├── Feed
│ │ ├── DataFeedRequest.cs
│ │ ├── DataFeedSource.cs
│ │ ├── GetImageSourceCompletedEventArgs.cs
│ │ ├── GetTextDocumentCompletedEventArgs.cs
│ │ ├── GetXmlDocumentCompletedEventArgs.cs
│ │ ├── LocalDataFeedSource.cs
│ │ ├── PhotoFeedConverter.cs
│ │ └── ResourceContentType.cs
│ ├── GlobalSuppressions.cs
│ ├── Properties
│ │ └── AssemblyInfo.cs
│ ├── ScePhotoCommand.cs
│ ├── ScePhoto.csproj
│ ├── ScePhotoException.cs
│ ├── ScePhotoLogger.cs
│ ├── ScePhotoSettings.cs
│ ├── ServiceProvider.cs
│ ├── Strings.Designer.cs
│ ├── Strings.resx
│ └── View
│ ├── MasterNavigator.cs
│ ├── NavigationCommands.cs
│ ├── Navigator.cs
│ ├── SyncCommands.cs
│ ├── ViewCommand.cs
│ └── ViewManager.cs
├── ScePhotoViewer
│ ├── app.config
│ ├── Commands
│ │ ├── DebugCommands.cs
│ │ └── SampleCommands.cs
│ ├── Controls
│ │ ├── CommandTextBox.cs
│ │ ├── DualImage.cs
│ │ ├── FilmStripControl.cs
│ │ ├── FilmStripPanel.cs
│ │ ├── GalleryHomeControl.cs
│ │ ├── IntroWindow.xaml
│ │ ├── IntroWindow.xaml.cs
│ │ ├── PhotoAlbumControl.cs
│ │ ├── PhotoDisplayControl.cs
│ │ ├── PhotoFlowDescriptionViewer.cs
│ │ ├── PhotoSlideShowControl.cs
│ │ ├── PhotoViewerControl.cs
│ │ ├── PhotoViewerHyperlink.cs
│ │ ├── PhotoViewerToolbarControl.cs
│ │ ├── RowScrollingPanel.cs
│ │ ├── SearchControl.cs
│ │ ├── SearchViewControl.xaml
│ │ ├── SearchViewControl.xaml.cs
│ │ └── SimplePhotoViewerControl.cs
│ ├── Converters
│ │ ├── DateTimeToStringConverter.cs
│ │ ├── HtmlToCleanStringConverter.cs
│ │ ├── NullableBoolToVisibilityConverter.cs
│ │ ├── PhotosInGalleryConverter.cs
│ │ ├── PhotoTagIDsToStringConverter.cs
│ │ ├── PhotoZoomFactorToBitmapScalingModeConverter.cs
│ │ ├── RotationAngleToSimplePositiveAngleConverter.cs
│ │ ├── SingleTagIdToStringConverter.cs
│ │ ├── ValueGreaterOrEqualConverter.cs
│ │ └── VisibilityToBooleanConverter.cs
│ ├── GlobalSuppressions.cs
│ ├── Main.cs
│ ├── NativeMethods.cs
│ ├── Pages
│ │ ├── MainPage.xaml
│ │ └── MainPage.xaml.cs
│ ├── Properties
│ │ ├── app.manifest
│ │ ├── AssemblyInfo.cs
│ │ ├── Resources.Designer.cs
│ │ ├── Resources.resx
│ │ ├── Settings.Designer.cs
│ │ └── Settings.settings
│ ├── Resources
│ │ ├── ArrowButtonResources.xaml
│ │ ├── BaseResources.xaml
│ │ ├── ColorResources.xaml
│ │ ├── ComboBoxResources.xaml
│ │ ├── FlowViewerResources.xaml
│ │ ├── fonts
│ │ │ ├── andlso.ttf
│ │ │ ├── NimNews.ttf
│ │ │ ├── Pesca.ttf
│ │ │ └── VINERITC.TTF
│ │ ├── GalleryHomeResources.xaml
│ │ ├── Images
│ │ │ ├── DescriptionHighlight.png
│ │ │ ├── Description.png
│ │ │ ├── film.png
│ │ │ ├── FitToWindowHighlight.png
│ │ │ ├── FitToWindow.png
│ │ │ ├── FullScreenOffHighlight.png
│ │ │ ├── FullScreenOff.png
│ │ │ ├── FullScreenOnHighlight.png
│ │ │ ├── FullScreenOn.png
│ │ │ ├── NextSlide.png
│ │ │ ├── PauseSlideShow.png
│ │ │ ├── PlaySlideShow.png
│ │ │ ├── PrevSlide.png
│ │ │ ├── PrintHighlight.png
│ │ │ ├── Print.png
│ │ │ ├── RotateLeftHighlight.png
│ │ │ ├── RotateLeft.png
│ │ │ ├── RotateRightHighlight.png
│ │ │ ├── RotateRight.png
│ │ │ ├── ScePhotoViewer.png
│ │ │ ├── SlideShowMouseOver.png
│ │ │ ├── SlideShow.png
│ │ │ ├── StarHighlight.png
│ │ │ ├── Star.png
│ │ │ ├── StarYellow.png
│ │ │ ├── StopSlideShow.png
│ │ │ ├── TagHighlight.png
│ │ │ ├── Tag.png
│ │ │ ├── zoomInHighlight.png
│ │ │ ├── zoomIn.png
│ │ │ ├── zoomOutHighlight.png
│ │ │ └── zoomOut.png
│ │ ├── PhotoAlbumResources.xaml
│ │ ├── PhotoGalleryAlbumSelectorResources.xaml
│ │ ├── PhotoViewerResources.xaml
│ │ ├── ScrollViewerResources.xaml
│ │ ├── SearchResources.xaml
│ │ ├── SlideShowResources.xaml
│ │ ├── Strings.Designer.cs
│ │ ├── Strings.resx
│ │ └── SyncControlResources.xaml
│ ├── ScePhotoViewerApplication.xaml
│ ├── ScePhotoViewerApplication.xaml.cs
│ ├── ScePhotoViewer.csproj
│ ├── ScePhotoViewer.csproj.user
│ ├── ScePhotoViewerSettings.cs
│ ├── ScePhotoViewer_TemporaryKey.pfx
│ ├── Services
│ │ ├── ApplicationInputHandler.cs
│ │ ├── SampleServiceProvider.cs
│ │ ├── SampleViewManager.cs
│ │ └── SubscriptionServiceManager.cs
│ ├── SingleInstance.cs
│ ├── SplashScreen.cs
│ └── Win32Resources
│ ├── ApplicationIcon.ico
│ ├── resource.h
│ ├── splashscreen.png
│ ├── SplashScreenWin32Resources.rc
│ └── SplashScreenWin32Resources.RES
├── ScePhotoViewer.sln
├── ScePhotoViewer.VS2005.sln
├── Setup
│ ├── Bootstrapper
│ │ ├── build.cmd
│ │ └── src
│ │ ├── Bootstrap
│ │ │ ├── dotnetfx3setup.exe
│ │ │ ├── dotnetinstaller.exe
│ │ │ ├── DotNetInstallerRes.1033.dll
│ │ │ ├── install.1033.xml
│ │ │ ├── install_prereq.1033.xml
│ │ │ ├── install.schema.xsd
│ │ │ └── LaunchDotNetInstaller.exe
│ │ ├── Branding
│ │ │ ├── 10.htm
│ │ │ ├── 10.jpg
│ │ │ ├── 20.htm
│ │ │ ├── 20.jpg
│ │ │ ├── 30.htm
│ │ │ ├── 30.jpg
│ │ │ ├── background1a.jpg
│ │ │ ├── dotnet.htm
│ │ │ ├── failure.htm
│ │ │ ├── neteula.htm
│ │ │ ├── readme.htm
│ │ │ ├── Setup.ico
│ │ │ └── success.htm
│ │ ├── EpilogSetup.exe.sed
│ │ ├── EpilogSetup_Prereq.exe.sed
│ │ ├── PrologSetup.exe.sed
│ │ └── Setup.exe.manifest
│ ├── HybridInstall
│ │ ├── ApplicationShortcut.appref-ms
│ │ ├── cmdline.txt
│ │ ├── HybridInstall.sln
│ │ ├── HybridInstall.VS2005.sln
│ │ ├── HybridInstall.wixproj
│ │ └── HybridInstall.wxs
│ ├── SubscriptionLogo.png
│ └── SubscriptionManifest.subscription
├── StrongNameTestKey
│ └── TestKey.snk
└── TransitionEffects
├── BandedSwirlTransitionEffect.cs
├── BlindsTransitionEffect.cs
├── BloodTransitionEffect.cs
├── CircleRevealTransitionEffect.cs
├── CircleStretchTransitionEffect.cs
├── CircularBlurTransitionEffect.cs
├── CloudRevealTransitionEffect.cs
├── CloudyTransitionEffect.cs
├── CrumbleTransitionEffect.cs
├── DissolveTransitionEffect.cs
├── DropFadeTransitionEffect.cs
├── FadeTransitionEffect.cs
├── GlobalSuppressions.cs
├── Images
│ ├── clouds.png
│ └── noise.png
├── LeastBrightTransitionEffect.cs
├── LineRevealTransitionEffect.cs
├── MostBrightTransitionEffect.cs
├── PixelateInTransitionEffect.cs
├── PixelateOutTransitionEffect.cs
├── PixelateTransitionEffect.cs
├── Properties
│ └── AssemblyInfo.cs
├── RadialBlurTransitionEffect.cs
├── RadialWiggleTransitionEffect.cs
├── RandomCircleRevealTransitionEffect.cs
├── RandomizedTransitionEffect.cs
├── RippleTransitionEffect.cs
├── RotateCrumbleTransitionEffect.cs
├── SaturateTransitionEffect.cs
├── Shaders
│ ├── BandedSwirl.fx
│ ├── BandedSwirl.fx.ps
│ ├── Blinds.fx
│ ├── Blinds.fx.ps
│ ├── Blood.fx
│ ├── Blood.fx.ps
│ ├── CircleReveal.fx
│ ├── CircleReveal.fx.ps
│ ├── CircleStretch.fx
│ ├── CircleStretch.fx.ps
│ ├── CircularBlur.fx
│ ├── CircularBlur.fx.ps
│ ├── CloudReveal.fx
│ ├── CloudReveal.fx.ps
│ ├── CompileAllShaders.cmd
│ ├── Crumble.fx
│ ├── Crumble.fx.ps
│ ├── Disolve.fx
│ ├── Disolve.fx.ps
│ ├── DropFade.fx
│ ├── DropFade.fx.ps
│ ├── Fade.fx
│ ├── Fade.fx.ps
│ ├── LeastBright.fx
│ ├── LeastBright.fx.ps
│ ├── LineReveal.fx
│ ├── LineReveal.fx.ps
│ ├── MostBright.fx
│ ├── MostBright.fx.ps
│ ├── Pixelate.fx
│ ├── Pixelate.fx.ps
│ ├── PixelateIn.fx
│ ├── PixelateIn.fx.ps
│ ├── PixelateOut.fx
│ ├── PixelateOut.fx.ps
│ ├── RadialBlur.fx
│ ├── RadialBlur.fx.ps
│ ├── RadialWiggle.fx
│ ├── RadialWiggle.fx.ps
│ ├── RandomCircleReveal.fx
│ ├── RandomCircleReveal.fx.ps
│ ├── Ripple.fx
│ ├── Ripple.fx.ps
│ ├── RotateCrumble.fx
│ ├── RotateCrumble.fx.ps
│ ├── Saturate.fx
│ ├── Saturate.fx.ps
│ ├── Shrink.fx
│ ├── Shrink.fx.ps
│ ├── SlideIn.fx
│ ├── SlideIn.fx.ps
│ ├── SmoothSwirlGrid.fx
│ ├── SmoothSwirlGrid.fx.ps
│ ├── Swirl.fx
│ ├── Swirl.fx.ps
│ ├── SwirlGrid.fx
│ ├── SwirlGrid.fx.ps
│ ├── Water.fx
│ ├── Water.fx.ps
│ ├── Wave.fx
│ └── Wave.fx.ps
├── ShrinkTransitionEffect.cs
├── SlideInTransitionEffect.cs
├── SmoothSwirlGridTransitionEffect.cs
├── strong_name.snk
├── SwirlGridTransitionEffect.cs
├── SwirlTransitionEffect.cs
├── TransitionEffect.cs
├── TransitionEffects.csproj
├── TransitionUtilities.cs
├── WaterTransitionEffect.cs
└── WaveTransitionEffect.cs
38 directories, 383 files
标签:
小贴士
感谢您为本站写下的评论,您的评论对其它用户来说具有重要的参考价值,所以请认真填写。
- 类似“顶”、“沙发”之类没有营养的文字,对勤劳贡献的楼主来说是令人沮丧的反馈信息。
- 相信您也不想看到一排文字/表情墙,所以请不要反馈意义不大的重复字符,也请尽量不要纯表情的回复。
- 提问之前请再仔细看一遍楼主的说明,或许是您遗漏了。
- 请勿到处挖坑绊人、招贴广告。既占空间让人厌烦,又没人会搭理,于人于己都无利。
关于好例子网
本站旨在为广大IT学习爱好者提供一个非营利性互相学习交流分享平台。本站所有资源都可以被免费获取学习研究。本站资源来自网友分享,对搜索内容的合法性不具有预见性、识别性、控制性,仅供学习研究,请务必在下载后24小时内给予删除,不得用于其他任何用途,否则后果自负。基于互联网的特殊性,平台无法对用户传输的作品、信息、内容的权属或合法性、安全性、合规性、真实性、科学性、完整权、有效性等进行实质审查;无论平台是否已进行审查,用户均应自行承担因其传输的作品、信息、内容而可能或已经产生的侵权或权属纠纷等法律责任。本站所有资源不代表本站的观点或立场,基于网友分享,根据中国法律《信息网络传播权保护条例》第二十二与二十三条之规定,若资源存在侵权或相关问题请联系本站客服人员,点此联系我们。关于更多版权及免责申明参见 版权及免责申明
网友评论
我要评论