Vydělávej až 160.000 Kč měsíčně! Akreditované rekvalifikační kurzy s garancí práce od 0 Kč. Více informací.
Hledáme nové posily do ITnetwork týmu. Podívej se na volné pozice a přidej se do nejagilnější firmy na trhu - Více informací.
Avatar
krepsy3
Tvůrce
Avatar
krepsy3:3.5.2016 23:08

Ahoj, měl bych malý dotaz, na který jsem nedokázal nejít odpověď. Chtěl bych vědět, za co je odpovědná třída Uri, kterou jsem použil v souvislosti změny vlastnosti Source kontrolky Image ve WPF. Kód je tento:

obrazek.Source = new BitmapImage(new Uri("Obrazky/obrazek 2.png",UriKind.Relative))

Když jsem si chtěl něco zjistit, byl jsem zavalen množstvím informací, ze kterých jsem nedokázal nic kloudného zjistit. Našel jsem i cosi o tom, že se používá při práci s FTP.

To BitmapImage se ještě dá, asi se jedná o něco, co Framework používá při práci s Image (System.Window­s.Media.Image), ale Uri nerozumím. V tutoriálu na Stack Overflow týpek třeba vůbec nepoužil UriKind.Relative, ale jinému to zase bez toho nešlo. Souvisí to nějak s příponou souboru obrázku (že by to tam nemuselo být pro .bmp)?

Děkuji předem za vaše odpovědi. Musím upozornit, že jsem si zatím nekoupil články o Interfacu a Delegátech, takže této problematice nerozumím ;)

Odpovědět
3.5.2016 23:08
Programátor je stroj k převodu kávy na kód.
Avatar
00
Člen
Avatar
Odpovídá na krepsy3
00:4.5.2016 14:29

Uri
URI je vlastně cesta k souboru. Příklady:

Soubor file:///home/ja/ke­cykecy.png
Internet ftp://ja@ty/kecykecy.png, http://seznam.cz/

Také může být relativní:
Jsem v C:\Users\ja\Pro­gramy\blbost\ a chci otevřít soubor C:\Users\ja\Pro­gramy\blbost\ke­cykecy.png -- Použiji:

new Uri("kecykecy.png",UriKind.Relative)

Přípona tam musí být (příponu Windows a některé programy jen schovávají :-( ).


URI (celým názvem Uniform Resource Identifier – „jednotný identifikátor zdroje“) je textový řetězec s definovanou strukturou, který slouží k přesné specifikaci zdroje informací (ve smyslu dokument nebo služba), hlavně za účelem jejich použití pomocí počítačové sítě, zejména Internetu. -- Wikipedie


Takže URI je cesta k souboru.
UriKind.Relative znamená, že je relativní (jsem ve složce ahoj/ a URI blbost.png znamená ahoj/blbost.png.


Také existují data URI: tady je jedna blbůstka, která to využívá:

data:text/pla­in;charset=utf-8,V%20adresn%C3%AD­m%20%C5%99%C3%A1dku%20je­%20n%C4%9Bjak%C3%BD%20tex­t%20--%20to%20je%20­data%20URI.%0D%0A%0D%0­ATak%C5%BEe%20da­ta%20URI%20ob­sahuj%C3%AD%20­data%20p%C5%99­%C3%ADmo%20v%20sob­%C4%9B.

Překopíruj do adresního řádku ^^^


Je to jako bys zadal adresu souboru, o nic jiného nejde.

Akceptované řešení
+20 Zkušeností
+2,50 Kč
Řešení problému
 
Nahoru Odpovědět
4.5.2016 14:29
Avatar
krepsy3
Tvůrce
Avatar
krepsy3:5.5.2016 13:11

O schovávání přípon vím, data uri znám z wikipedie (https://cs.wikipedia.org/…C3%AD_strana), to tvé se skoro dá číst :D (pochopil jsem " V žádném adresním řádku ..."), dál ne, ještě si to nechám zobrazit celé ;)

Jinak mockrát děkuji za odpověď, už tomu rozumím. Na konstruktor BitmapImage jsem koukal, má více overrideů, tady se pouze zadá cesta :D

Nahoru Odpovědět
5.5.2016 13:11
Programátor je stroj k převodu kávy na kód.
Děláme co je v našich silách, aby byly zdejší diskuze co nejkvalitnější. Proto do nich také mohou přispívat pouze registrovaní členové. Pro zapojení do diskuze se přihlas. Pokud ještě nemáš účet, zaregistruj se, je to zdarma.

Zobrazeno 3 zpráv z 3.