WPF: Kontejner pro editaci objektů

Předem se omlouvám za nadpis. Nenapadá mě totiž, jak lépe pojmenovat věc, kterou určitě všichni znáte z (převážně vektorových) grafických editorů, a kterou můžete vidět na následujícím obrázku v akci:

dragdrop

Jedná se o kontrolní prvek zděděný z ContentControl (tedy takový, který umožňuje mít do sebe zanořený nějaký obsah) a umožňuje přesuny, změnu velikosti a rotaci jiného prvku, který je uvnitř.

Vycházel jsem z článku WPF Diagram Designer: Part 1, ale chtěl jsem, aby můj kontrolní prvek měl následující vlastnosti:

  • Jednoduché použití (příklad v závěru článku)
  • Možnosti přesunů, změny velikosti a rotace
  • Kurzory nezávisle na nastavení Windows
  • Kurzory správně vzhledem k úhlu natočení
  • Možnost definovat Brush (barvu) úchopových okrajů
  • Možnost dalšího rozšiřování (tedy ne jenom styl ContentControl-u)

Příklad

<Window x:Class="ObjectMoveTest.Window1"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:con="clr-namespace:WPFUtils;assembly=WPFUtils"
Title="Window1" Height="600" Width="800">
  <Canvas>
    <con:ObjectTransformContainer Width="300" Height="200" SelectionBrush="Red" Canvas.Left="50" Canvas.Top="50">
      <MediaElement Stretch="Fill" x:Name="mediaElement" Source="./test/movie.wmv" IsHitTestVisible="False"/>
    </con:ObjectTransformContainer>
  </Canvas>
</Window>

Závěr

Pro lepší představu a použití ve vlastních projektech nabízím celý projekt ke stažení. Doufám, že se bude někomu hodit. :)

Zveřejněno 20 října 09 10:11 by topas
Vedeno pod: ,

Upozornění na nové komentáře

Pokud chčeš dostávat upozornění emailem na změny u toho příspěvku,tak se zaregistruj zde.zde

Odebírat komentáře k tomuto příspěvku pomocí RSS

Komentář

# .NET i jiné ... said on listopadu 9, 2009 22:39:

Tak toto se mi nashromáždilo v notebooku: CSS compatibility cheat sheet pre IE 6,7,8 – aspnet.sk Ako

# Nozomi said on února 27, 2012 0:30:

I think you're saniyg some weird stuff here, Denis.WPF uses hardware rendering, much more extensively than SL, using D3D9.  In my experience writing a real non-trivial app with it, it runs fine on an Atom-based netbook with Intel graphics.  (I have two of them as test machines.)  I'm dissatisfied only with cold startup time, which is painful on slow CPU/disk machines.Of course, to get a smooth running WPF app, you need to understand performance, how WPF works, pick a target hardware spec, and know the limits.  But the same is true for anything including HTML/JS.  Hardware acceleration doesn't magically make everything fast and free.Also, the .NET Framework (CLR, BCL) is already compiled to the native instruction set.  Parts of the .NET Framework that are managed code get NGEN'd to native code at install time, or queued for immediate NGEN'ing in the background depending on which OS you're running.  And of course, .NET application and library code is also compiled to the native instruction set, always, whether you use NGEN or you let it happen at runtime via JIT.Finally, remember that SL apps on WP7 are already running on ARM.  All WP7 phones use ARM CPUs.  From what I hear about SL WP7 app dev (I don't own a WP7 phone), perf is a challenge but it's doable and getting better in updates to the OS.  If apps can be made to run smoothly on a phone with an ARM CPU, why not on a tablet with an ARM CPU?

# ljdueangy said on února 27, 2012 12:26:

bLhAD1  <a href="http://ilirbfdcplla.com/">ilirbfdcplla</a>

# pfcyvqpsnfb said on února 28, 2012 11:05:

5B3Vbf , [url=http://jruuiqaznnnh.com/]jruuiqaznnnh[/url], [link=http://qjlzavxdzadl.com/]qjlzavxdzadl[/link], http://kqtndjqrcfdm.com/

# buhhougcewa said on března 1, 2012 16:14:

9TKIis  <a href="http://ljugernuybiu.com/">ljugernuybiu</a>

# aonoijaqtqk said on března 14, 2012 3:14:

a7MXuT , [url=http://pppdlheflcen.com/]pppdlheflcen[/url], [link=http://wnehlaxyukmp.com/]wnehlaxyukmp[/link], http://sqmdcykmcwak.com/

# PhyllisWoope said on dubna 25, 2017 19:40:

wh0cd428961 [url=http://cialisprice2017.com/]cialis price[/url]

# KelTeerly said on června 26, 2017 9:09:

Clomid C Est Quoi Bebe  [url=http://leviprix.com/levitra-40mg-sale.php]Levitra 40mg Sale[/url] Clomid Plus D Ovulation

# KelTeerly said on června 30, 2017 18:29:

Generic Cialis Safe  [url=http://cialprice.com]generic cialis[/url] Acheter Du Amoxicillin En Ligne

# KelTeerly said on července 3, 2017 0:31:

Levitra Kopa  [url=http://buycheapvia.com]viagra[/url] buy accutane paypal

# JerryTus said on července 3, 2017 3:48:

oexp0mnabhsm593c17

[url=http://google.us]google[/url]

<a href=http://google.us>google</a>

rr8suy95x1a6rl7hjy

# KelTeerly said on července 9, 2017 1:11:

Buy Priligy Germany  [url=http://buytadalaf.com]cialis[/url] Secure Zentel 400mg Ups In Canada Pharmacy

# Kennglalcops said on července 9, 2017 21:11:

Viagra A Cosa Serve  [url=http://femalecial.com]online pharmacy[/url] Keflex Urinary Tract Infection

# ChasRegmep said on července 9, 2017 21:12:

Strep Throat Of Amoxicillin Forum  [url=http://cialvia.com]cialis online[/url] Kamagra Gel Oral Efectos Secundarios

# ChasRegmep said on července 9, 2017 21:12:

Strep Throat Of Amoxicillin Forum  [url=http://cialvia.com]cialis online[/url] Kamagra Gel Oral Efectos Secundarios

# johhnyBoozy said on července 12, 2017 0:59:

7cqlgmanbyz4n100b8

[url=http://google.us]google[/url]

<a href=http://google.us>google</a>

huujmvq6q96t8mhlix

# KelTeerly said on července 14, 2017 21:24:

Effet Viagra Image  [url=http://cialvia.com]cialis[/url] Lilly Cialis Comprar

# ChasRegmep said on července 15, 2017 13:08:

Zovorax Eye Drops For Sale  [url=http://femalecial.com]cialis[/url] Spertinex

# ChasRegmep said on července 15, 2017 13:08:

Zovorax Eye Drops For Sale  [url=http://femalecial.com]cialis[/url] Spertinex

# Kennglalcops said on července 16, 2017 0:24:

Achat De Viagra Quebec  [url=http://levinorx.com]viagra[/url] Acheter Priligy Sans Ordonnance

# AlfredKiz said on července 20, 2017 15:27:

wh0cd523545 [url=http://eulexin.world/]buy eulexin[/url] [url=http://ceftin.world/]ceftin for bronchitis[/url] [url=http://prilosec.world/]buy prilosec[/url] [url=http://suprax.world/]suprax 400 mg[/url] [url=http://famvir.world/]famvir[/url] [url=http://desogen.reisen/]desogen[/url]

# ChasRegmep said on července 20, 2017 20:57:

Viagra Cane  [url=http://buytadalaf.com]viagra cialis[/url] Antibiotics Names Amoxil

# Kennglalcops said on července 20, 2017 23:19:

Which Bacteria Does Cephalexin Treat  [url=http://pricescial.com]online pharmacy[/url] New Healthy Man Complaints

# Kennglalcops said on července 20, 2017 23:19:

Which Bacteria Does Cephalexin Treat  [url=http://pricescial.com]online pharmacy[/url] New Healthy Man Complaints

# AlfredKiz said on července 25, 2017 17:17:

wh0cd923359 [url=http://buyinderal.us.org/]propranolol inderal 10 mg tablet[/url] [url=http://buyacyclovir.us.org/]Acyclovir Online[/url] [url=http://nexium40mg.us.com/]nexium capsules[/url]

# AlfredKiz said on července 27, 2017 5:59:

wh0cd396661 [url=http://orderdiflucanonline.us.com/]order diflucan online[/url] [url=http://effexor.us.org/]effexor[/url] [url=http://buypropecia.us.org/]buy propecia cheap[/url]

# TracyAstew said on července 28, 2017 22:32:

wh0cd711498 [url=http://viagra24.us.org/]order viagra[/url] [url=http://busparonline.us.com/]generic for buspar[/url]

# Kennethgic said on srpna 2, 2017 10:35:

wh0cd857561 [url=http://colchicine.us.org/]Colchicine[/url] [url=http://flagyl.us.org/]Buy Flagyl Antibiotic[/url]

# VarnoFum said on srpna 6, 2017 14:27:

fiscal payday loans

     [url=http://paydaysoloonline.com/] cash advance[/url]

   <a href="http://paydaysoloonline.com/"> personal loans</a>

   cash loans near me

# Bennysop said on srpna 6, 2017 16:51:

wh0cd155276 [url=http://buyprovera.us.org/]buy provera pills[/url]

# Kennethgic said on srpna 7, 2017 22:00:

wh0cd391937 [url=http://genericsynthroid.us.com/]Synthroid No Rx[/url] [url=http://buyflagyl.us.org/]buy flagyl online[/url]

# AlfredKiz said on srpna 7, 2017 23:29:

wh0cd494030 [url=http://hydrochlorothiazide.us.org/]HCTZ[/url] [url=http://tretinoincream01.us.com/]tretinoin cream 0.1[/url] [url=http://nexiumprice.us.com/]Nexium Price[/url]

# KelTeerly said on srpna 25, 2017 8:40:

Viagra Nebenwirkungen 100  [url=http://buytadalaf.com]generic cialis[/url] Zithromax Tendon Problems

# AlfredKiz said on srpna 26, 2017 4:31:

wh0cd999785 [url=http://buy-antabuse.store/]antabuse[/url] [url=http://propranolol.brussels/]propranolol[/url] [url=http://celexa.fund/]read full article[/url]

# AaronPex said on srpna 28, 2017 9:04:

wh0cd74138 [url=http://buymethotrexate.store/]methotrexate[/url] [url=http://cafergot.brussels/]cafergot[/url]

# AaronPex said on srpna 29, 2017 4:07:

wh0cd74131 [url=http://buystromectol.shop/]stromectol[/url] [url=http://triamterene.mba/]triamterene hctz 37.5-25 mg[/url]

# AlfredKiz said on srpna 29, 2017 9:19:

wh0cd620017 [url=http://buy-albuterol.store/]albuterol[/url] [url=http://buypropranolol.store/]buy propranolol[/url] [url=http://triamterene.zone/]triamterene[/url]

# AlfredKiz said on září 1, 2017 17:47:

[url=http://buycialisonline.us.org/]cialis[/url]

# Bennysop said on září 2, 2017 4:57:

[url=http://cialis247.us.com/]CHEAP CIALIS FROM CANADA[/url]

# Michaelalind said on září 2, 2017 5:54:

wh0cd221376 [url=http://buyviagra.work/]price for viagra[/url] [url=http://zithromax.systems/]buy zithromax online cheap[/url] [url=http://buytenormin.reisen/]tenormin online[/url]

# Kennethgic said on září 2, 2017 16:41:

[url=http://buycialisonline.us.org/]cialis online prescription[/url]

# Michaelalind said on září 3, 2017 22:23:

wh0cd1764323 [url=http://buyabilify.shop/]buy abilify[/url]

# Kennethgic said on září 4, 2017 0:11:

wh0cd662218 [url=http://buy-ventolin.shop/]click here[/url] [url=http://prednisoneonline.pro/]prednisone[/url]

# AlfredKiz said on září 4, 2017 5:09:

wh0cd735699 [url=http://buyyasmin.shop/]generic yasmin birth control[/url] [url=http://nexiumgeneric.pro/]nexium[/url]

# Michaelalind said on září 4, 2017 7:37:

wh0cd368335 [url=http://prednisone.tools/]prednisone[/url]

# Kennethgic said on září 4, 2017 15:25:

wh0cd699405 [url=http://buy-azithromycin.store/]azithromycin[/url] [url=http://buyyasmin.shop/]buy yasmin[/url] [url=http://buyamoxicillin.reisen/]amoxicillin[/url]

# Kennethgic said on září 4, 2017 20:00:

wh0cd1103068

# AaronPex said on září 4, 2017 20:44:

wh0cd1690866 [url=http://buyretina.shop/]retin-a[/url] [url=http://buy-methotrexate.reisen/]methotrexate[/url]

# Michaelalind said on září 5, 2017 21:53:

wh0cd3380766 [url=http://buycafergot.store/]cafergot medication[/url] [url=http://buy-azithromycin.store/]azithromycin[/url]

# JohnNob said on září 6, 2017 16:10:

[url=https://essayonline.us.com/]essay help[/url]

# Kennethgic said on září 6, 2017 19:58:

wh0cd2205168 [url=http://propecia.systems/]hair loss finasteride[/url]

# Bennysop said on září 8, 2017 3:06:

wh0cd3233820 [url=http://elimite.directory/]our website[/url]

# Stewartwal said on září 8, 2017 12:38:

wh0cd5585010 [url=http://citalopramhbr20mg.shop/]citalopram hbr 20mg[/url]

# Michaelalind said on září 9, 2017 0:40:

wh0cd5878888 [url=http://buy-azithromycin.shop/]azithromycin[/url] [url=http://prednisoneonline.pro/]prednisone on line[/url]

# Bennysop said on září 9, 2017 0:40:

wh0cd3748142 [url=http://amoxil.schule/]amoxil 500mg capsule[/url] [url=http://metformin.reisen/]how to order metform onlline[/url]

# AaronPex said on září 9, 2017 4:20:

wh0cd5291109 [url=http://buycelexa.shop/]celexa[/url] [url=http://cephalexin500mg.work/]cephalexin[/url]

# Michaelalind said on září 9, 2017 9:15:

wh0cd6172791 [url=http://buycymbalta.reisen/]buy cymbalta cheap[/url] [url=http://buy-seroquel.reisen/]seroquel liquid[/url] [url=http://buyviagrasoft.store/]viagra soft[/url]

# Michaelalind said on září 10, 2017 4:21:

wh0cd6540173 [url=http://sildenafil.us.com/sildenafil-soft-tabs.html]sildenafil citrate over the counter[/url]

# AaronPex said on září 10, 2017 4:34:

wh0cd5878897 [url=http://buy-strattera.work/]strattera[/url]

# AaronPex said on září 10, 2017 5:13:

wh0cd5658485 [url=http://sildenafil.us.com/sildenafil-citrate-100mg-pills.html]sildenafil generic[/url]

# Stewartwal said on září 10, 2017 8:04:

wh0cd6613644 [url=http://medrol.zone/]medrol[/url] [url=http://buyviagra.directory/]buy viagra without prescription[/url]

# Michaelalind said on září 10, 2017 11:10:

wh0cd6907504 [url=http://buy-azithromycin.shop/]where can i buy azithromycin[/url] [url=http://metformin.reisen/]metformin[/url] [url=http://amitriptylinehydrochloride.pro/]amitriptyline hcl 25 mg tab[/url]

# Michaelalind said on září 10, 2017 12:36:

wh0cd6760584 [url=http://propecia.us.com/]generic finasteride 1mg no prescription[/url]

# Michaelalind said on září 11, 2017 3:36:

wh0cd7495304 [url=http://buy-flagyl.shop/]flagyl[/url] [url=http://abilifycost.pro/]abilify cost[/url] [url=http://diflucan.systems/]fluconazole buy online without prescription[/url]

# Charleszoomi said on září 12, 2017 8:38:

wh0cd7421868 [url=http://elimite.directory/]elimite[/url] [url=http://costofcialis.pro/]cost of cialis[/url]

# Charleszoomi said on září 12, 2017 12:51:

wh0cd4776781 [url=http://diflucan.systems/]diflucan[/url] [url=http://buycytotec.store/]cytotec[/url]

# Kennethgic said on září 12, 2017 13:00:

wh0cd5070672

# Bennysop said on září 12, 2017 23:25:

wh0cd5511531 [url=http://propecia.systems/]finasteride for women[/url] [url=http://buy-seroquel.reisen/]seroquel[/url] [url=http://buytamoxifen.shop/]tamoxifen[/url]

# Michaelalind said on září 12, 2017 23:52:

wh0cd7201451 [url=http://tretinoin.store/]tretinoin[/url]

# SoloFum said on září 16, 2017 3:09:

fast cash battle creek michigan

     [url=http://soloadvance.com/] payday express[/url]

   <a href="http://soloadvance.com/"> personal loans</a>

   personal loan calculator ph

# Jamescip said on září 16, 2017 5:08:

[url=https://paydayloans.us.org/]payday loans[/url]

# Jamescip said on září 16, 2017 21:20:

[url=https://paydayloans.us.org/]payday loans online no credit check[/url]

# JohnDyefe said on září 19, 2017 3:23:

[url=https://paydayloans.us.org/]payday loans[/url]

# JohnDyefe said on září 19, 2017 19:58:

[url=https://paydayloans.us.org/]payday loans online direct lenders only[/url]

# JohnDyefe said on září 20, 2017 11:19:

[url=https://paydayloans.us.org/]loans for bad credit[/url]

# JohnDyefe said on září 21, 2017 11:00:

[url=https://paydayloans.us.org/]personal loans[/url]

# JohnDyefe said on září 22, 2017 2:38:

[url=https://paydayloans.us.org/]More about the author[/url]

# JohnDyefe said on září 23, 2017 10:43:

[url=https://freesexchat.us.com/]sex chat[/url]

# JohnDyefe said on září 24, 2017 2:26:

[url=https://writemyessay.us.com/]write my essay[/url]

# JohnDyefe said on září 24, 2017 17:49:

[url=https://freesexchat.us.com/]sex chat[/url]

# JohnDyefe said on září 25, 2017 10:13:

[url=https://essaywritingservices.us.com/]uk essay writing service[/url] [url=https://onlineloans.us.com/]Get More Info[/url]

# JamesDyefe said on října 8, 2017 18:40:

write essay service <a href=https://essaywritingservices.us.com>essay">https://essaywritingservices.us.com>essay writing service</a> essaywritingservices.us.com [url=https://essaywritingservices.us.com]admission essay writing service[/url]

# Write College Essay said on října 16, 2017 3:13:

essay writing services reviews <a href=https://essaywritingservice.us.com>home</a>">https://essaywritingservice.us.com>home</a> paper writer free [url=https://essaywritingservice.us.com]essay writing service[/url]

# JamesDyefe said on října 31, 2017 17:01:

college essay helper <a href=https://collegeessay.us.com>help">https://collegeessay.us.com>help with writing essays</a> need help writing a essay [url=https://collegeessay.us.com]college admissions essay help[/url]

# Write College Essay said on listopadu 8, 2017 17:19:

order essay paper <a href=https://buyessays.us.com>buy">https://buyessays.us.com>buy essay online cheap</a> help with an essay [url=https://buyessays.us.com]write a college essay[/url]

# JoeDyefe said on listopadu 11, 2017 6:48:

i need help writing a essay <a href=https://collegeessay.us.com>college">https://collegeessay.us.com>college essay writer</a> college essay [url=https://collegeessay.us.com]paying college athletes essay[/url]

# Custom Essays said on listopadu 17, 2017 8:36:

buy essay online <a href=https://buyessay.us.com>buy">https://buyessay.us.com>buy essay</a> buy essays [url=https://buyessay.us.com]buy essays online[/url]

# JamesDyefe said on listopadu 29, 2017 21:32:

writing essays help <a href=https://buyessay.us.com>online">https://buyessay.us.com>online essay help</a> buy essay online [url=https://buyessay.us.com]buy essays online[/url]

# JoeDyefe said on prosince 1, 2017 18:24:

buy essay online <a href=https://essayonline.us.com>click">https://essayonline.us.com>click here</a> buy essay [url=https://essayonline.us.com]writing online[/url]

# Essay Writing Tip said on prosince 6, 2017 15:49:

college essay help <a href="https://collegeessays.us.com">writing">https://collegeessays.us.com">writing the research paper</a> college essays [url=https://collegeessays.us.com]buy essays[/url]

Vytvoření nového komentáře

(povinný) 
(nepovinný)
(povinný) 
Opiš čísla, která vidíš na obrázku:
Vyvojar.cz na prodej!