Can I load an image from an arbitrary path?

Untested, and would only work in Windows

#if WINDOWS
	public static Texture2D LoadTextureFromFile()
	{
		using (OpenFileDialog openFileDialog = new OpenFileDialog())
		{
			openFileDialog.InitialDirectory = "/";
			openFileDialog.Filter = "PNG Image (*.png)|*.png";
			openFileDialog.RestoreDirectory = true;
			openFileDialog.Multiselect = false;

			if (openFileDialog.ShowDialog() == DialogResult.OK)
				using (Texture2D loadedTexture = Texture2D.FromStream(graphicsDevice, openFileDialog.OpenFile()))
					return loadedTexture;
		}

		return null;
	}
#endif
1 Like